《数据库原理与应用教程:SQL Server》课后答案

  • 更新时间:
  • 3276人关注
  • 点击下载

给大家带来的是关于数据库原理相关的课后习题答案下载,介绍了关于数据库原理、数据库应用教程方面的内容,由益鹤轩 网友提供,本资源目前已被914人关注,高等院校数据库原理类教材综合评分为:8.1分

资源详情相关推荐
《数据库原理与应用教程:SQL Server》封面
  • 出版社:清华大学出版社
  • 作者:尹志宇、郭晴
  • 大小:192 KB
  • 类别:数据库原理
  • 热度:642
  • 数据库系统原理与设计(第2版)
  • 数据库原理与应用教程
  • 数据库原理与应用教程(第3版)
  • 数据库查询优化器的艺术:原理解析与SQL性能
  • 数据库原理、应用与实践(SQL Server)
  • “计算机程序设计基础”课程是计算机专业技术基础系列课程中的重要组成部分。《计算机程序设计基础-C语言》从结构化程序设计技术出发,以C程序设计语言为载体,通过对应用问题的分析引导出解决问题的方法,进而用C程序设计语言代码描述了对应用问题的处理过程,同时展现了在计算机应用过程中如何将方法和编码联系起来的具体程序设计过程。通过《计算机程序设计基础-C语言》的学习,读者可以了解计算机程序设计所需要的基本知识,掌握计算机结构化程序设计的基本概念、基本技术和方法。

    《计算机程序设计基础-C语言》可作为高等院校计算机专业或非计算机专业的程序设计基础课程教材,也可供计算机应用开发人员参考。

    目录

    • ●章微型计算机概述
    • 1.1微机概述
    • 1.1.1计算机的发展
    • 1.1.2微型机的发展
    • 1.2信息在计算机中的表示
    • 1.2.1进位计数制
    • 1.2.2带符号数在计算机中的表示
    • 1.2.3字符在计算机中的表示
    • 1.3微机的工作过程
    • 1.3.1微机的基本结构
    • 1.3.2微机的工作过程
    • 1.4微机系统的应用
    • 1.4.1主要性能指标
    • 1.4.2应用
    • 习题1
    • 第2章8086/8088微处理器
    • 2.18086CPU的内部组成结构
    • 2.1.1总线接口单元
    • 2.1.2执行单元
    • 2.2存储器组织结构
    • 2.2.1存储器的分段结构
    • 2.2.2物理地址和逻辑地址
    • 2.38086/8088CPU的引脚信号及其功能
    • 2.3.1地址/数据复用线与地址/状态复用线
    • 2.3.28086/8088CPU大及小工作模式
    • 2.3.38086/8088CPU的控制总线引脚信号
    • 2.4典型时序分析
    • 2.4.1基本概念
    • 2.4.2读总线周期操作时序
    • 2.4.3写总线周期操作时序
    • 习题2
    • 第3章8086/8088的指令系统
    • 3.18086/8088的指令格式和寻址方式
    • 3.1.1指令格式
    • 3.1.2寻址方式
    • 3.2数据传送指令
    • 3.2.1通用数据传送MOV指令
    • 3.2.2堆栈操作指令
    • 3.2.3交换指令
    • 3.2.4地址传送指令
    • 3.2.5查表指令
    • 3.3输入输出指令
    • 3.3.1输入指令
    • 3.3.2输出指令
    • 3.4算术运算指令
    • 3.4.1概述
    • 3.4.2加法指令
    • 3.4.3减法指令
    • 3.4.4十进制加减运算调整指令
    • 3.4.5乘法指令
    • 3.4.6除法指令
    • 3.4.7十进制乘除运算调整指令
    • 3.5逻辑运算和移位循环指令
    • 3.5.1逻辑运算指令
    • 3.5.2移位指令
    • 3.5.3循环移位指令
    • 3.6串操作指令
    • 3.6.1概述
    • 3.6.2数据串传送指令
    • 3.6.3数据串比较指令
    • 3.读数据串指令
    • 3.6.5写数据串指令
    • 3.6.6数据串检索指令
    • 3.7控制转移指令
    • 3.7.1概述
    • 3.7.2无条件转移指令
    • 3.7.3过程调用和返回指令
    • 3.7.4条件转移指令
    • 3.7.5循环控制指令
    • 3.8处理器控制指令
    • 习题3
    • 第4章汇编语言程序设计
    • 第5章存储器系统
    • 第6章输入输出接口
    • 第7章中断控制接口
    • 第8章定时与计数器
    • 第9章并行接口电路
    • 0章串行通信个DMA控制接口
    • 1章总线技术
    • 2章A/D和D/A转换接口电路
    • 附录DEBUG常用命令
    展开阅读
    精选笔记1:数据库SQL SELECT查询的工作原理

    1小时1分钟前回答

    作为Web开发人员,虽并非专业的DBA,但我们总是离不开数据库。一般开发员只会应用SQL的四条经典语句:select,insert,delete,update。以至于从来没有研究过它们的工作原理,在这里我们说一说select在数据库中的工作原理。

    B/S架构中最经典的话题无非于三层架构,可以大概分为数据层,业务逻辑层和表示层,而数据层的作用一般都是和数据库交互,例如查询记录。我们经常是写好查询SQL,然后调用程序执行SQL。但是它内部的工作流程是怎样的呢?先做哪一步,然后做哪一步等,我想还有大部分朋友和我一样都不一定清楚。

    数据库SQL SELECT查询的工作原理

    第一步:应用程序把查询SQL语句发给服务器端执行

    我们在数据层执行SQL语句时,应用程序会连接到相应的数据库服务器,把SQL语句发送给服务器处理。

    第二步:服务器解析请求的SQL语句

    1.SQL计划缓存,经常用查询分析器的朋友大概都知道这样一个事实,往往一个查询语句在第一次运行的时候需要执行特别长的时间,但是如果你马上或者在一定时间内运行同样的语句,会在很短的时间内返回查询结果。

    原因:

    • 服务器在接收到查询请求后,并不会马上去数据库查询,而是在数据库中的计划缓存中找是否有相对应的执行计划,如果存在,就直接调用已经编译好的执行计划,节省了执行计划的编译时间。
    • 如果所查询的行已经存在于数据缓冲存储区中,就不用查询物理文件了,而是从缓存中取数据,这样从内存中取数据就会比从硬盘上读取数据快很多,提高了查询效率.数据缓冲存储区会在后面提到。

    2.如果在SQL计划缓存中没有对应的执行计划,服务器首先会对用户请求的SQL语句进行语法效验,如果有语法错误,服务器会结束查询操作,并用返回相应的错误信息给调用它的应用程序。

    注意:此时返回的错误信息中,只会包含基本的语法错误信息,例如select写成selec等,错误信息中如果包含一列表中本没有的列,此时服务器是不会检查出来的,因为只是语法验证,语义是否正确放在下一步进行。

    3.语法符合后,就开始验证它的语义是否正确,例如,表名,列名,存储过程等等数据库对象是否真正存在,如果发现有不存在的,就会报错给应用程序,同时结束查询。

    4.接下来就是获得对象的解析锁,我们在查询一个表时,首先服务器会对这个对象加锁,这是为了保证数据的统一性,如果不加锁,此时有数据插入,但因为没有加锁的原因,查询已经将这条记录读入,而有的插入会因为事务的失败会回滚,就会形成脏读的现象。

    5.接下来就是对数据库用户权限的验证,SQL语句语法,语义都正确,此时并不一定能够得到查询结果,如果数据库用户没有相应的访问权限,服务器会报出权限不足的错误给应用程序,在稍大的项目中,往往一个项目里面会包含好几个数据库连接串,这些数据库用户具有不同的权限,有的是只读权限,有的是只写权限,有的是可读可写,根据不同的操作选取不同的用户来执行,稍微不注意,无论你的SQL语句写的多么完善,完美无缺都没用。

    6.解析的最后一步,就是确定最终的执行计划。当语法,语义,权限都验证后,服务器并不会马上给你返回结果,而是会针对你的SQL进行优化,选择不同的查询算法以最高效的形式返回给应用程序。例如在做表联合查询时,服务器会根据开销成本来最终决定采用hashjoin,mergejoin,还是loopjoin,采用哪一个索引会更高效等等,不过它的自动化优化是有限的,要想写出高效的查询SQL还是要优化自己的SQL查询语句。

    当确定好执行计划后,就会把这个执行计划保存到SQL计划缓存中,下次在有相同的执行请求时,就直接从计划缓存中取,避免重新编译执行计划。

    第三步:语句执行

    服务器对SQL语句解析完成后,服务器才会知道这条语句到底代表了什么意思,接下来才会真正的执行SQL语句。

    这时分两种情况:

    • 如果查询语句所包含的数据行已经读取到数据缓冲存储区的话,服务器会直接从数据缓冲存储区中读取数据返回给应用程序,避免了从物理文件中读取,提高查询速度。
    • 如果数据行没有在数据缓冲存储区中,则会从物理文件中读取记录返回给应用程序,同时把数据行写入数据缓冲存储区中,供下次使用。

    说明:SQL缓存分好几种,这里有兴趣的朋友可以去搜索一下,有时因为缓存的存在,使得我们很难马上看出优化的结果,因为第二次执行因为有缓存的存在,会特别快速,所以一般都是先消除缓存,然后比较优化前后的性能表现,这里有几个常用的方法:

    DBCC DROPCLEANBUFFERS

    从缓冲池中删除所有清除缓冲区。

    DBCC FREEPROCCACHE

    从过程缓存中删除所有元素。

    DBCC FREESYSTEMCACHE

    从所有缓存中释放所有未使用的缓存条目。

    SQLServer2005数据库引擎会事先在后台清理未使用的缓存条目,以使内存可用于当前条目。但是,可以使用此命令从所有缓存中手动删除未使用的条目。

    这只能基本消除SQL缓存的影响,目前好像没有完全消除缓存的方案,如果大家有,请指教。

    结论:只有知道了服务执行应用程序提交的SQL的操作流程才能很好的调试我们的应用程序。

    • 确保SQL语法正确;
    • 确保SQL语义上的正确性,即对象是否存在;
    • 数据库用户是否具有相应的访问权限。

    总结

    以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对码农之家的支持。如果你想了解更多相关内容请查看下面相关链接

    展开阅读

    数据库原理相关资源

    • 数据库原理与应用

      数据库原理与应用

      数据库原理与应用 丛书名:高等院校计算机教材系列 作者:何玉洁 出版日期:2007-01 本书系统讲解数据库的基本概念和应用技术,包括目前流行的SQLServer后台数据库管理系统以及VisualBasic6.0可视化编程环境。附录中包含SQLServer系统提供的常用函数、VisualBasic应用程序的发布方法,并给出一个完整的课程设计题目,帮助读者综合运用所学知识。. 本书为各章均配备习题,相关章配有上机练习,书后还提供习题答案,方便读者参考。本书重点突出、面向实用

      大小:51MB数据库

      立即下载
    • 分布式数据库系统原理

      分布式数据库系统原理

      厄兹叙、Patrick Valduriez编著的 《分布式数据库系统原理(第3版)》 主要介绍分布式数据库管理系统的基本概念、基本理论和设计问题,涵盖了分布式数据库系统的设计、实现和管理等方面的诸多

      大小:117 MB数据库

      立即下载
    • 数据库原理及应用

      数据库原理及应用

      数据库原理及应用 作者:熊才权 华中科技大学 出版时间:2008/2/1 数据库由于具有数据结构化、较低的数据冗余度、较高的数据独立性、易于扩充、易于编制应用程序等优点,己成为计算机信息系统的核心技术和重要基础。本书以关系数据库为重点,全面、系统地介绍了数据库系统的基本概念、基本原理、基本方法以及有关应用。为了配合教学与自学,本书每章均配有适量习题,附录中还提供了MicrosoftSQLServer2000简明教程和面向教学的实验指导书。 本书可

      大小:151.5MB数据库

      立即下载
    • 数据库原理与应用(第二版)

      数据库原理与应用(第二版)

      数据库原理与应用(第二版) 作者:靳学辉张力编 出版日期:2002-06 本书是集原理与应用于一书的数据库教材,含基础篇、应用篇、原理篇三部分。应用篇共八章,全面介绍FoxPro的用户界面、函数、数据库的基本操作、程序设计、程序设计工具以及FoxPro的多用户功能。原理篇中的前三章介绍关系数据库的基本理论、关系的规范理论和数据库设计。最后一章简单介绍分布式数据库系统。各章均配有适量的习题。这次修编对应用篇做了重写,全面介绍Windows平台

      大小:13MB数据库

      立即下载
    • Oracle数据库系统原理

      Oracle数据库系统原理

      Oracle数据库系统原理(第2版) 包括数据库基本理论以及Oracle数据库系统知识两部分。主要包括关系模型基本理论、ER图及范式理论、安装Oracle 12c软件、SQL语言、Oracle的逻辑存储空间、索引原理

      大小:112 MBOracle

      立即下载
    • 数据库系统原理与技术

      数据库系统原理与技术 作者:李绍原,刘又诚编著 北京航空航天大学 出版时间:1992.8

      大小:4.80MB数据库

      立即下载

    学习笔记

    5小时26分钟前回答

    详解MySQL执行原理、逻辑分层、更改数据库处理引擎

    用了那么长时间的MySQL,sql语句相信早已烂熟于心,于是,我就试着去了解它的执行原理,以下是我学习过程中的总结要点。 只要是B/S架构,都是会有客户端与服务端,mysql也不例外。 首先客户端发出一个请求,这个请求就是一个查询请求(Select),而它请求的对象就是服务端,服务端是怎么处理这项查询功能的呢? 逻辑分层 首先可以把服务端想象成一个大的容器,里面有四层结构,当一个请求过来后,将会执行这四层,执行一遍后才会返回给我们想要的结果。 第一层 :连接层 也就是说,我们客户端发送一个Select是直接交给连接层来处理,而它的作用就是提供与客户端连接的服务 连接层只是与客户……