数据库应用基础教程课后答案---中国铁道出版社.doc_第1页
数据库应用基础教程课后答案---中国铁道出版社.doc_第2页
数据库应用基础教程课后答案---中国铁道出版社.doc_第3页
数据库应用基础教程课后答案---中国铁道出版社.doc_第4页
数据库应用基础教程课后答案---中国铁道出版社.doc_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一章习题参考答案1选择题(1)数据库(DB)、数据库系统(DBS)、数据库管理系统(DBMS)三者之间的关系是( A )。ADBS 包括DB 和 DBMS BDBMS 包括DB 和 DBSCDB 包括 DBS和 DBMS DDBS 就是DB,也就是 DBMS(2)设有部门和职员两个实体,每个职员只能属于一个部门,一个部门可以有多名职员,则部门与职员实体之间的联系类型是( B )。Am:n B1:m Cm:k D1:1(3)对于“关系”的描述,正确的是( D )。A同一个关系中允许有完全相同的元组B同一个关系中元组必须按关键字升序存放C在一个关系中必须将关键字作为该关系的第一个属性D同一个关系中不能出现相同的属性名(4)E-R 图用于描述数据库的( A )。A概念模型 B数据模型C存储模型 D逻辑模型(5)在关系模型中,一个关键字( C )。A可以由多个任意属性组成B至多由一个属性组成C可以由一个或者多个其值能够唯一表示该关系模式中任何元组的属性组成D可以由一个或者多个任意属性组成(6)现有如下关系:患者(患者编号,患者姓名,性别,出生日期,单位)医疗(患者编号,患者姓名,医生编号,医生姓名,诊断日期,诊断结果)其中,医疗关系中的外关键字是( A )。A患者编号 B患者姓名C患者编号和患者姓名 D医生编号和患者编号(7)一个关系只有一个( D )。A候选关键字 B外部关键字C组合关键字 D主关键字(8)下列标识符可以作为局部变量使用的是( C )。AMyvar BMy var CMyvar DMy var(9)Transact-SQL支持的一种程序结构语句是( A )。ABEGINEND BIFTHENELSECDO CASE DDOWHILE(10)字符串常量使用( A )作为定界符。A单引号 B双引号C方括号 D花括号2填空题(1)数据库是在计算机系统中按照一定的方式组织、存储和应用的(数据集合 )。支持数据库各种操作的软件系统叫(数据库管理系统 )。由计算机 、操作系统、DBMS、数据库、应用程序及有关人员等组成的一个整体叫(数据库系统 )。(2)数据库常用的数据模型是( 层次模型 )、( 网状模型 )、( 关系模型 ),SQLServer属于(关系模型 )。(3)关系中能唯一区分、确定不同元组的属性或属性组合,称为该关系的(关键字 )。(4)表是由行和列组成的,行有时也称为(元组 )或记录,列有时也称为(属性 )或字段。(5)E-R 图是由( 实体 )、( 属性 )和( 联系 )3 种基本要素组成的。(6)(企业管理器 )和( 查询分析器 )是SQLServer的两个主要工具。(7)SQLServer的启动、暂停、停止和状态检查使用(SQLServer服务管理器 )工具。(8)必须启动SQLServer服务器中的( )服务才能访问SQLServer数据库。SQLServer(9)某标识符的首字母为时,表示该标识符为( 局部 )变量名。(10)在 SQLServer2000 中主要是通过使用(查询分析器 )运行Transact-SQL语句。(11)注释是一些说明性的文字,而不是(可执行)语句,不参与程序的执行。(12)在 SQLServer2000 中,每个程序块的开始标记为关键字( BEGIN),结束标记为关键字( END )。(13)在 SQLServer2000 中,CASE结构是一个(函数 ),只能作为一个(表达式)使用在另一个语句中。(14)在条件执行语句中,关键字 IF和ELSE之间及 ELSE 之后,可以使用(单个 )语句,也可以使用(语句块 )。(15)在循环结构的语句中,当执行到关键字( BREAK )后将终止整个语句的执行,当执行到关键字( CONTINUE )后将结束一次循环体的执行。3问答题(1)什么是数据库、数据库管理系统以及数据库系统?它们之间有什么联系?答:数据库(Datebase,DB)是按照一定的方式组织的、存储在外部存储设备上的、能为多个用户共享的、与应用程序相互独立的相关数据集合。数据库管理系统(Database Management System,DBMS)是对数据库中数据资源进行统一管理和控制的软件,它提供数据定义、数据操作、数据库管理、数据库建立和维护以及通信等功能。数据库系统(Database System,DBS)是由计算机系统、数据库及其描述机构、数据库管理系统和有关人员组成,是由这几个方面组成的具有高度组织性的总体。数据库中包含的数据是存储在存储介质上的数据文件的集合;每个用户均可使用其中的数据,不同用户使用的数据可以重叠,同一组数据可以为多个用户共享;DBMS 为用户提供对数据的存储组织、操作管理功能;用户通过 DBMS 和应用程序实现数据库系统的操作与应用。(2)简述数据库系统的特点。答:数据共享减少数据冗余具有较高的数据独立性增强了数据安全性和完整性保护(3)实体之间的联系有哪几种?分别举例说明。答:实体间的联系有3 种类型:一对一联系(1:1)。例如,一个班级只有一个班长,一个班长只在一个班级任职,班长与班级之间的联系是一对一的联系。一对多联系(1:n)。例如,一个学院有许多学生,但一个学生只能在一个学院就读,所以学院和学生之间的联系是一对多的联系。多对多联系(m:n)。例如,一个学生可以选修多门课程,任何一门课程可以为多个学生选修,所以学生和课程之间的联系是多对多的联系。(4)什么是数据模型?目前数据库主要有哪几种数据模型?它们各有何特点?答:数据模型是数据库中实体之间联系的抽象描述即数据结构在数据库系统中,常用的数据模型有层次模型、网状模型和关系模型3 种。层次模型用树形结构来表示实体及其之间的联系。建立数据的层次模型需要满足两个条件:有一个结点没有父结点,这个结点即根结点;其他结点有且仅有一个父结点。网状数据模型用以实体型为结点的有向图来表示各实体及其之间的联系。其特点是:可以有一个以上的结点无父结点;至少有一个结点有多于一个的父结点。关系模型是用二维表格来表示实体及其相互之间的联系。在关系模型中,把实体集看成一个二维表,每一个二维表称为一个关系。(5)简述将E-R 图转化为关系模型的方法。答:1n 联系到关系模型的转化。在进行关系模型转化时,把每个实体分别转化为一个关系,实体名作为关系名,实体属性作为关系的属性,并在1n 联系的n 方增加一个属性,该属性存放与该实体相联系的另一个实体的关键字。mn联系到关系模型的转化。进行关系模型转化时,把两个实体独立地转化为两个关系,转化时,将实体名作为关系名,实体属性转化为关系属性,除此以外单独设置一个关系描述两个实体间的联系,其属性由两个实体的关键字组成。11 联系到关系模型的转化。其转化方法是,将两个实体按上述实体转化方法分别转化为两个关系,并对每个属性增加一个外部关键字,外部关键字由与本实体相联系的对方实体的关键字组成。将一个 E-R 图中的每组联系的两个实体按上述方法分别转化为关系后,还需要对转化所得到的关系进行整理。(6)当前,主要有哪几种新型数据库系统?它们各有什么特点?用于什么领域?答:分布式数据库。分布式数据库系统(Distributed Database System,DDBS)是地理上分布在计算机网络的不同结点,逻辑上属于同一系统的数据库系统,它不同于将数据存储在服务器上供用户共享存取的网络数据库系统,分布式数据库系统不仅能支持局部应用,存取本地结点或另一结点的数据,而且能支持全局应用,同时存取两个或两个以上结点的数据。分布式数据库的主要特点是:数据是分布的;数据是逻辑相关的;结点的自治性。多媒体数据库。随着信息技术的发展,数据库应用从传统的企业信息管理扩展到计算机辅助设计(ComputerAided Design,CAD)、计算机辅助制造(ComputerAided Manufacture,CAM)、办公自动化(OfficeAutomation,OA)、人工智能(Artificial Intelligent,AI)等多种应用领域。这些领域中要求处理的数据不仅包括传统的数字、字符等格式化数据,还包括大量多种媒体形式的非格式化数据,如图形、图像、声音等。多媒体数据库系统(MultimediaDatabase System,MDBS)是能存储和管理多种媒体的数据库系统。数据仓库技术。数据仓库(Data Warehouse,DW)作为决策支持系统(Decision SupportSystem,DSS)的有效解决方案,涉及 3 方面的技术内容:数据仓库技术、联机分析处理(On-LineAnalysis Processing,OLAP)技术和数据挖掘(Data Mining,DM)技术。数据仓库用于数据的存储和组织,OLAP 集中于数据的分析,数据挖掘则致力于知识的自动发现。它们都可以分别应用到信息系统的设计和实现中,以提高相应部分的处理能力。但是,由于这 3种技术内在的联系性和互补性,将它们结合起来即是一种新的 DSS架构。这一架构以数据库中的大量数据为基础,系统由数据驱动。(7)Transact-SQL的运算符有哪几类?答:Transact-SQL运算符共有 5类,即算术运算符、位运算符、逻辑运算符、比较运算符和连接运算符。(8)数据库系统的体系结构有哪几种?各有一些什么样的开发工具?答:数据库系统的体系结构大体上分为 4种模式:单用户模式、主从式多用户模式、客户机/服务器模式(Client/Server,C/S)和Web浏览器/服务器模式(Browser/Server,B/S)。一些专有数据库厂商都提供了数据库编程工具,如 Sybase 的 Power+、Oracle 的Developer 2000等,但比较流行的还是 Delphi、VisualBasic、PowerBuilder 等通用语言,这几个开发工具各有所长、各具优势。如 VisualBasic 采用的是BASIC 语言,简单易学,与微软产品有很强的结合力;Delphi 有出色的组件技术、编译速度快,采用面向对象的 Pascal语言有极高的编译效率与直观易读的语法;PowerBuilder 拥有作为 Sybase公司专利的强大的数据窗口技术、提供与大型数据库的专用接口。常用的 Web 数据库系统的开发技术有:ASP(Active ServerPage)、JSP(JavaServerPage)和 PHP(Personal Home Page)。ASP 是一个Web服务器端的开发环境,利用它可以产生和执行动态的、互动的、高性能的 Web 服务应用程序。ASP 采用脚本语言VBScript 或JavaScript作为自己的开发语言。JSP是 Sun公司推出的新一代 Web应用开发技术,它可以在 Servlet和 JavaBeans 的支持下,完成功能强大的 Web应用程序。PHP 是一种跨平台的服务器端的嵌入式脚本语言。它大量地借用C、Java 和Perl语言的语法, 并加入了自己的特性,使 Web开发者能够快速地写出动态页面。ASP 、JSP和 PHP 都提供在 HTML代码中混合某种程序代码、并由有语言引擎解释执行程序代码的能力。但 JSP代码被编译成 Servlet 并由 Java虚拟机解释执行,这种编译操作仅在对 JSP页面的第一次请求时发生。在 ASP 、PHP、JSP环境下,HTML 代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。普通的 HTML页面只依赖于 Web 服务器,而ASP 、PHP、JSP页面需要附加的语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入到 HTML 代码中,然后一起发送给浏览器。三者都是面向Web服务器的技术,客户端浏览器不需要任何附加的软件支持。(9)全局变量有哪些特点?答:全局变量通常被服务器用来跟踪服务器范围和特定会话期间的信息,不能显式地被赋值或声明。全局变量不能由用户定义,也不能被应用程序用来在处理器之间交叉传递信息。(10)Transact-SQL的流程控制语句有哪些?各自作用是什么?答:选择控制。SQLServer提供了多个根据条件来改变程序的流程的控制语句。IFELSE语句是最常用的控制流语句;CASE 函数可以判断多个条件值;GOTO语句无条件地改变流程;RETURN 语句会将当前正在执行的批处理、存储过程等中断;WAITFOR 语句允许定义一个时间或者一个时间间隔,在定义的时间内或者经过定义的时间间隔时,其后的Transact-SQL语句会被执行。循环控制。WHILE 语句根据条件表达式控制 Transact-SQL语句或语句块重复执行的次数。条件为真(TRUE)时,在 WHILE 循环体内的Transact-SQL语句会一直重复执行,直到条件为假(FALSE)为止。在 WHILE 循环内Transact-SQL语句的执行可以使用BREAK与CONTINUE 语句来控制。4应用题一个图书借阅管理系统要求提供下列服务:(1)可以随时查询书库中现有书籍的品种、数量与存放位置。所有书籍均由书号唯一标识。(2)可以随时查询书籍借还情况,包括借书人姓名、单位、借书日期、应还日期。系统约定,任何人可以借多种图书,任何一种图书可为多个人所借,借书证号具有唯一性。(3)当需要时,可以通过系统中保存的出版社的电话、E-mail、通信地址及邮政编码等信息向出版社购买有关书籍。系统约定,一个出版社可以出版多种图书,同一种图书仅为一个出版社出版,出版社名具有唯一性。根据上述假设,试作如下设计:(1)构造满足系统需求的E-R 图。(2)将E-R 图转换为等价的关系模型。(3)确定图书借阅数据库中各表的结构。解:(1)E-R 图:单位借书证号 姓名借书人出版社名 电子邮箱m 借书日期借阅还书日期nn 1 出版社n 电话图书出版书号 书名 数量 位置 邮政编码 通信地址(2)转换为等价的关系模型结构如下:借书人(借书证号,姓名,单位) 关键字:借书证号图书(书号,书名,数量,位置,出版社名) 关键字:书号出版社(出版社名,电子邮箱,电话,邮政编码,通信地址) 关键字:出版社名借阅(借书证号,书号,借书日期,还书日期) 关键字:借书证号,书号(3)略1选择题(1)下列( C )不是sql数据库文件的后缀。A.mdf B.ldf C.tif D.ndf(2)SQLServer数据库对象中最基本的是( B )。A表和语句 B表和视图C文件和文件组 D用户和视图(3)事务日志用于保存( C. )。A. 程序运行过程 B. 程序的执行结果C. 对数据的更新操作 D. 数据操作(4)Master 数据库是 SQLServer系统最重要的数据库,如果该数据库被损坏,SQLServer将无法正常工作。该数据库记录了 SQLServer系统的所有( D )。A. 系统设置信息 B. 用户信息C. 对数据库操作的信息 D. 系统信息(5)SQLServer中组成数据库的文件有( B )类型。A. 2 B.3 C.4 D. 5(6)分离数据库就是将数据库从( B )中删除,但是保持组成该数据的数据文件和事务日志文件中的数据完好无损。A. Windows B.SQLServerC.U 盘 D. 企业管理器(7)数据库恢复的基础是利用转储的冗余数据。这些转储的冗余数据包括( C )。A. 数据字典、应用程序、审计档案、数据库后备副本B. 数据字典、应用程序、审计档案、日志文件C. 日志文件、数据库后备副本D. 数据字典、应用程序、数据库后备副本2填空题(1)数据库逻辑结构中的文件主要存储( 用户数据 ),而且存储所有与(用户数据 )相关的信息。(2)数据库物理结构主要应用于面向计算机的(数据 )组织和管理。(3)SQLServer的( 逻辑组件 )通常被称为数据库对象。(4)一个数据库只能有一个( 主数据 )文件。一个数据库可以有( 零个)或多个( 次数据 )文件。(5)事务日志文件是用来( 对数据的 )更新情况的文件,扩展名为LDF。(6)SQLServer中( 数据存储 )的基本单位是页,一页的大小为 8 千字节 (KB )。页是存储数据的(基本 ) 单位。(7)一个服务器在理论上可以管理( 32,767 )个数据库。(8)使用 Transact-SQL语言的 ALTER DATABASE 命令,选择关键字( ADD LOGFILE )将日志文件添加到指定的数据库。(9)使用分离和附加数据库的操作,可以将数据库从一台计算机( 附加 )到另一台计算机。(10)还原数据库是一个( 装载 )数据库的备份,然后应用事务日志(重建 )的过程。3问答题(1)SQLServer数据库存储结构如何?简述它们的功能。答: SQLServer数据库的存储结构分为逻辑结构和物理结构。数据库逻辑结构主要应用于面向用户的数据组织和管理,如数据库的表、视图、存储过程、用户权限等。数据库物理结构主要应用于面向计算机的数据组织和管理,如数据文件、表和视图的数据组织方式、磁盘空间的利用和回收、文本和图形数据的有效存储等。(2)什么是 SQLServer数据库对象?组成数据库对象的原素有哪些?它们的功能是什么?答: SQLServer数据库对象也就是具体存储数据或对数据进行操作的实体。组成数据库对象的原素有:表和视图,其他还有存储过程、用户、角色、规则、默认、用户定义的数据类型。它们的功能是:对象名称 功 能由数据的列和行组成,格式与工作表相类似。行代表一个唯一的记录,列代表记表录中的一个字段。类型定义规定了某个列中可以存放的数据类型。可以限制某个表格可见的行和列,或者将多个表格数据结合起来,作为一个表格视图显示。一个视图还可以集中列。是一种Transact-SQL语句,它们被编译成一个执行计划。该过程用于性能优化和存储过程控制访问。用户 在数据库内,对象的全部权限和所有权由用户帐户控制。用户帐户与数据库相关。角色 指对数据具有相同的访问权限,是数据库一个对象。规则 实现check约束从而保证数据的完整性。默认 默认是针对一个表上的一个列的设置,它决定没有被指定为任何值时使用该值。用户定义的 是一种自定义的数据类型,它基于某个预先定义的数据类型。它可以用来建立对数据类型 程序员更有意义的表结构,有助于确保存放数据的相似类的列都具有相同的数据类型。是一个由一条或多条Transact-SQL语句构成的子例行程序,用于封装代码以便于用户定义的重用。一个函数可以有最多 1024个输入参数。用户定义的函数可以取代视图和存储过函数程。(3)SQLServe 数据库文件有哪几种类型?其扩展名是什么?简述它们的作用。答:SQLServe 数据库文件有:主数据文件 MDF 来存储数据库的启动信息和部分或全部数据。次数据文件 NDF 用来存储主数据文件没存储的其他数据。事务日志文件 LDF 用来记录数据库更新情况的文件。(4)SQLServer 中文件组的概念是什么?简述文件组的作用和分类。答:出于分配和管理目的,可以将数据库文件分成不同的文件组。一些系统可以通过控制在特定磁盘驱动器上放置的数据和索引来提高自身的性能。主文件组和用户定义的文件组。(5)SQLServer 提供了哪些系统数据库?简述它们的作用。答:Master:记录了SQLServer系统的所有系统信息。Model:所有用户数据库和Tempdb数据库的模板数据库。Msdb:是代理服务数据库,为其警报、任务调度和记录操作员的操作提供存储空间。Tempdb:为所有的临时表、临时存储过程及其它临时操作提供存储空间。(6)在 SQLServer中创建、修改和删除数据库的常用方法有哪几种?创建、修改和删除数据库有什么权限限制?答:数据库的创建可以在企业管理器(Enterprise Manager)中用可视化的图形方式或用向导方式完成,也可以在查询分析器中使用 Transact-SQL 语言完成。只有授予权限的用户可以创建数据库。(7)什么是数据库的分离?什么是数据库的附加?在什么情况下进行数据库的分离和附加?答:分离数据库就是将数据库从 SQL Server中删除,但是保持组成该数据的数据文件和事务日志文件中的数据完好无损。附加数据库的工作是分离数据库的逆操作,通过附加数据库,可以将没有加入 SQLServer服务器的数据库文件添加到服务器中。如果想按以下方式移动或复制数据库:(1)从一台计算机移动到另一台计算机;(2)从一个物理磁盘移动到另一个物理磁盘上(例如,当包含该数据库文件的磁盘空间已用完,希望扩充现有的文件而又不愿将新文件添加到其它磁盘上的数据库)。(3)当SQLServer运行时,在 Windows中直接复制数据库文件到客户机上;则可采取分离和附加数据库的方法进行相关操作。(8)SQLServer 数据库的备份有几种类型?答:数据库备份(Database Backups)、差异备份(Differential Database Backups)、事务日志备份(Transaction Log Backup)、文件或文件组备份(File and File GroupBackup)。(9)什么叫备份设备?备份设备的作用是什么?备份的存储介质可以是什么?答:存放备份数据的设备叫备份设备。备份设备的作用是存放备份数据。备份的存储介质可以是磁盘或磁带。(10)创建备份设备有几种方法?数据库备份的基本操作是什么?在进行备份操作时应注意什么?答:使用企业管理器创建备份设备,既可在企业管理器中的“管理”文件夹的“备份”中先创建备份设备,也可在实现备份操作时,直接创建新备份设备。数据备份的基本操作顺序是:先选择备份类型,然后创建备份设备,再实现备份。4应用题分别在企业管理器和查询分析器(用CREATEDATABASE 语句)中创建符合如下条件的数据库,此数据库包含两个数据文件和两个事务日志文件:数据库文件的名称为:财务信息数据库。数据文件 1的逻辑文件名为:财务数据 1,物理文件名为:财务数据1.mdf,存放在“G:财务数据”目录下(若G 盘中无此子目录,可先建立此目录,然后再创建数据库)。文件的初始大小为:2MB;增长方式为自动增长,每次增加1MB。数据文件 2 的逻辑文件名为:财务数据 2,物理文件名为:财务数据 2.ndf,存放在与主数据文件相同的目录下;文件的初始大小为:2MB;增长方式为自动增长,每次增加15%。日志文件为:日志文件1 的逻辑文件名为:财务日志1,物理文件名为:财务日志1.ldf,存放在“财务日志”目录下;初始大小为:1MB;增长方式为自动增长,每次增加10%。日志文件2 的逻辑文件名为:财务日志2,物理文件名为:财务日志2.ldf,存放在“财务日志”目录下;初始大小为:2MB;不自动增长。答:一、选择题1表设计器的“允许空”单元格用于设置该字段是否可输入空值,实际上就是创建该字段的( D )约束。A主键 B外键 CNULL DCHECK2下列关于表的叙述正确的是( C )。A只要用户表没有人使用,则可将其删除 B用户表可以隐藏C系统表可以隐藏 D系统表可以删除3下列关于主关键字叙述正确的是( A )。A一个表可以没有主关键字B只能将一个字段定义为主关键字C如果一个表只有一个记录,则主关键字字段可以为空值D都正确4下列关于关联叙述正确的是( C )。A可在两个表的不同数据类型的字段间创建关联B可在两个表的不同数据类型的同名字段间创建关联C可在两个表的相同数据类型的不同名称的字段间创建关联D在创建关联时选择了级联更新相关的字段,则外键表中的字段值变化时,可自动修改主键表中的关联字段5CREATETABLE 语句( C )。A必须在数据表名称中指定表所属的数据库B必须指明数据表的所有者C指定的所有者和表名称组合起来在数据库中必须唯一D省略数据表名称时,则自动创建一个本地临时表二、填空题1Transact-SQL语言创建数据表的语句是 CREATETABLE ,删除数据表的语句是 DROPTABLE 。2Transact-SQL语言将数据插入到数据表的语句是 INSERT INTO,修改数据的语句是UPDATE。3数据的完整性是指数据库中的数据具有 正确性、有效性和一致性。4数据完整性包括 实体完整性、域完整性、引用完整性和用户定义完整性。5实体完整性是要求 一个关系中所有主属性非空。三、问答题1简述SQLServer中常用哪几种数据类型。答:SQLServer中常用数据类型有:二进制数据、字符数据、日期和时间数据、货币数据、数字数据。2在数据库中,取“NULL”值与取“0”值的含义相同吗?如果不同,它们的区别是什么?答:在关系数据库中,取“NULL”值与取“0”值的含义不相同。取“NULL”值即空值实际上是一个占位符,它表示“该属性的值是未知的,可能是值域中的任意值”,而取“0”值是一个确定的值。例如,某个学生的某科成绩为 0,和某科成绩为 NULL 是不同的含义。成绩为0 表示该学生的该科成绩已经有了,是0 分;而为NULL 则表明该成绩还没有被填入,是两个不同的概念。3举例说明参照完整性的含义。答:参照完整性也称为引用完整性,是用来维护相关数据表之间数据一致性的手段。通过实现引用完整性,可以避免因一个数据表的记录改变而使另一个数据表内的数据变成无效的值。引用完整性约束是指引用关系中外码的取值或者是空值(外码的每个属性值均为空值)或者是取被引用关系中某个元组的主码值。下面举例说明。现有两个数据表:学生信息表(学号,姓名,性别,专业号,年龄)和专业信息表(专业号,专业名)。学生信息表中的主关键字是“学号”。“专业号”是其中的一个基本属性。但它是专业信息表中的主关键字。那么学生信息表中的“专业号”就是外码(也称外来键),外码“专业号”的取值或为空,或为专业关系中的某个元组的主码值.四、应用题图书馆借书系统由借书证表(借书证编号、姓名、性别、年龄、院系),书籍表(书籍编号、书籍名称、作者、出版社)和借书记录表(借书证编号、书籍编号、借书日期、应归还日期)组成。(1)借书证、书籍和借书记录这三个表应该分别用哪些属性作为主关键字?(2)简述如何使用查询分析器创建借书证表。(3)写出在书籍中新增加一条记录(006,数据库原理,王维,人民邮电出版社)的Transact-SQL语句。答:(1)借书证、书籍和借书记录这三个表的主关键字如下(标有下划的字段):借书证表(借书证编号、姓名、性别、年龄、院系)书籍表(书籍编号、书籍名称、作者、出版社)借书记录表(借书证编号、书籍编号、借书日期、应归还日期)(2)略(3)在书籍表中增加记录(006,数据库原理,王维,人民邮电出版社)的 Transact-SQL语句如下:INSERT INTO 书籍表 VALUES (006,数据库原理,王维,人民邮电出版社) 习题1选择题(1)设 A、B 两个数据表的记录数分别为 3 和4,对两个表执行交叉联接查结果中最多可获得( C )条记录。A3 B.4 C.12 D. 81(2)如果查询的 SELECT 子句为 SELECTA, B,C * D,则不能使用的 GRO是( A )。AGROUP BY ABGROUP BYA,BCGROUP BYA,B,C*DDGROUP BY A,B,C,D(3)关于查询语句中ORDER BY 子句使用正确的是( C )。A如果未指定排序字段,则默认按递增排序B数据表的字段都可用于排序C如果在 SELECT子句中使用了 DISTINCT关键字,则排序字段必须出结果中D联合查询不允许使用 ORDER BY 子句(4)在查询设计器中,不能与其他窗格保持同步的是( D )。A关系图窗格 B. 网格窗格CSQL窗格 D. 结果窗格(5)下列函数中,返回值数据类型为int 的是( B )。ALEFT B.LENCLTRIM D. SUNSTRING2填空题(1) 在启动查询分析器时,在登录对话框中可使用( Local )作为本地服务(2) 查询分析器窗口主要由对象浏览器和(查询 )窗口组成。(3) 从 Windows“开始”菜单启动查询分析器后,默认数据库为( master )(4) 以表格方式显示的查询结果保存为( 导出 )文件,其文件扩展名为(以文本方式显示的查询结果保存为(报表 )文件,其文件扩展名为( rpt )(5) 可使用( PRINT )或( SELECT )语句来显示函数结果。(6) 在查询语句中,应在( SELECT )子句中指定输出字段。(7) 如果要使用 SELECT 语句返回指定条数的记录,则应使用( TOP )关定输出字段。(8) 联合查询指使用( UNION )运算将多个(查询结果)合并到一起。(9) 当一个子 SELECT 的结果作为查询的条件,即在一个 SELECT语句的 WH中出现另一个SELECT 语句,这种查询称为( 嵌套)查询。(10) 连接查询可分为 3种类型:(内连接)、( 外连接)和交叉连接。3问答题(1) 在 SELECT 语句中,根据列的数据对查询结果进行排序的子句是什么?能行的关键字是什么?(2) 写出与表达式“仓库号 NOTIN(wh1,wh2)”功能相同的表达式。用 BEAND 形式改写条件子句WHERE mark550AND mark650。(3) 在一个包含集合函数的 SELECT 语句中,GROUPBY 子句有哪些用途?khdaw(4)HAVING 与WHERE同时用于指出查询条件,请说明各自的应用场合。(5) 如果只想查看两个联接的表中互相匹配的行,应使用什么类型的联接?4应用题(1) 使用 SQL语句创建学生基本信息表 student(s_ no、s _ name、s _ sex、birthday、polity )和学生成绩表sco 时(s_no、c_no、score)。针对这两个表,利用 SELECT 语句实现下列查询。 所有学生的基本信息,并按学号排序。SELECT *FROM studentORDER BY s_no 所有女生的信息和女生的人数。SELECT * FROM student WHERE s_sex=”女”SELECT COUNT(*)as 女生人数 FROM studentWHEREs_sex=”女” 所有男生的姓名、出生日期和年龄。SELECT s_name,birtherday,YEAR(GETDATE()-YEAR(birthday) AS 年 龄 FROMstudent WHERE s_sex=”男” 所有学生的姓名、出生日期、年龄、选修课程和成绩。SELECT a.s_name, a.birthday, YEAR(GETDATE()-YEAR(birthday) AS 年龄,b.c_no,b.scoreFROM studenta INNER JOINscob ON a.s_no=b.s_no 某个指定姓名学生的成绩。SELECT a.s_name,b.score FROM student a INNER JOIN sco b ON a.s_no=b.s_no WHEREa.s_name=”张三” 不及格学生的姓名。SELECT a.s_name FROM student a INNER JOIN sco b ON a.s_no=b.s_no WHEREb.score35 查询有 10名以上(含10 名)职工的部门信息(部门名和职工人数),并按职工人数降序排序。SELECT 部门名,COUNT(职工号)AS 职工人数 FROM 部门,职工 WHERE 部门.部门号=职工.部门号 GROUP BY 部门名 HAVING COUNT(*)=10 ORDER BY 职工人数 DESC1选择题(1)SQL语言中,删除一个视图的命令是( B )。A. DELETE B. DROPC. CLEAR D. REMOVE(2)建立索引的作用之一是 ( D )。A 节省存储空间 B. 便于管理C 提高查询速度 D. 提高查询和更新的速度(3)以下关于主索引和候选索引的叙述正确的是 ( C )。A主索引和候选索引都能保证表记录的惟一性Note:此题是 VFPB主索引和候选索引都可以建立在数据库表和自由表上的概念(周肆清注)C主索引可以保证表记录的惟一性,而候选索引不能D主索引和侯选索引是相同的概念(4)在数据库设计器中,不能完成的操作是( )。A创建数据表关联 B修改数据表关联字段C修改关联中的主键表和外键表 D删除关联Note:此题是 VFP(5)下面所列条目中,( C )不是标准的 SQL语句。的概念,无答案(周肆A.ALTER TABLE B.CREATETABLE清注)C.ALTER VIEW D. CREATEVIEW2填空题(1)索引是数据库中一种特殊类型的对象,它与( 数据库表 )有着紧密的关系。(2)在数据库中,索引使数据库程序无需对整个表进行( 扫描 ),就可以在其中找到所需数据。(3)在 SQLServer2000 中可创建 3种类型的索引,即惟一性索引、( 主键索引 )和聚集索引。(4)视图是一个( 虚拟表 ),并不包含任何的物理数据。(5)视图属性包括视图( 视图名称、权限、所有者、创建日期 )和用于创建视图的文本等几个方面。3问答题(1)聚集索引与非聚集索引之间有哪些不同点?在一个表中是否可以建立多少个聚集索引和非聚集索引?答:在建立了聚集索引的基本表中,表中各记录的物理顺序与索引键值的逻辑顺序相同;数据表中数据更改后需要对记录重新物理排序。而在只建立了非聚集索引的表中,记录的物理顺序不一定与索引键值保持一致;数据表中数据更改后,不需要对表中记录重新排序,只需要更新对应的索引即可。一个基本表中只能建立一个聚集索引,但可以建立多个非聚集索引。(2)一个复合索引中最多可以包含多少个字段?答:SQLServer中的复合索引就是由两个或多个字段组合而成的索引,是从索引的维护和管理角度来划分的索引类型,可以是聚集索引,也可以是非聚集索引,但不包括其中的惟一性索引,每个表只能建立一个聚集索引,但最多可以创建249 个非聚集索引,一个索引包含的字段最大数目为16 个,所有索引中所包含的字段字节长度之和不能超过900 个字节。(3)在哪些情况下SQLServer会自动建立索引?答:如果表上尚未创建聚集索引,且将某字段设置为主键约束时未指定非聚集索引,则会自动创建惟一性聚集索引以强制实施该约束;在某字段上设置惟一性约束时,自动在该字段上创建惟一性非聚集索引以强制该约束。(4)什么是视图?视图有哪些用途?答:视图是一个虚拟表,同物理的基本表一样在逻辑上也包含一系列带有名称的列和数据行,但本身并不包含任何的物理数据,数据仍存放在定义视图的基本表中。对视图的操作与对表的操作一样,可以对其进行查询、修改和删除。当对通过视图看到的数据进行修改时,相应的基表的数据也会发生变化,同样,若基表的数据发生变化,这种变化也会自动地反应到视图中。视图的用途:(1)简化操作通过视图可以对经常使用的联接、投影、联合查询操作简化用户操作数据的方式。(2)定制数据视图允许用户以不同的方式查看数据。(3)导出数据可以建立一个基于多表的视图,然后用 SQLServer 的批复制程序(BCP)复制视图引用的数据行到一个文件中,而这个文件又可以被导入到excel等程序中供进一步分析使用。(4)提高安全性可以使用 GRANT和 REVOKE命令为各种用户授予在视图上的操作权限,但不授予用户在基本表上的操作权限。这样通过视图,用户只能查询或修改各自所能见到的数据,从而保证了数据的安全。4应用题(1)使用向导对student_db数据库中 st_info表建立一个索引。答:在企业管理器中,单击主菜单“工具”“向导”,弹出“选择向导”对话框,展开“数据库”节点后选择“创建索引向导”,然后按向导要求选择数据库为 student_db,表st_info和需要建立索引的字段列即可。(2)使用企业管理器对student数据库的 st_info表建立一个索引。答:在企业管理器中,展开数据库节点,选择“student_db”数据库,再单击“表”,在右窗格中显示了所有该数据库的表,选择“st_info”表,鼠标右键弹出右键菜单,在菜单中选择“所有任务”“管理索引”命令,弹出“管理索引”对话框,在对话框中,单击“新建”按钮,弹出“新建索引”对话框,在对话框中输入要创建的索引名称,再选择用于创建索引的列,并设置索引的各种选项,最后单击“确定”按钮完成索引的创建。(3)使用企业管理器删除第5 题中所建立的索引。答:在企业管理器中选择要删除索引的表,鼠标右键在弹出菜单中单击“设计表”命令,弹出“设计表”对话框,在对话框的表编辑区单击鼠标右键,在弹出的菜单中单击“索引键”命令,弹出“属性”对话框,(会自动选定“索引/键”选项卡),从“选定的索引”列表中选择要删除的索引,并单击“删除”按钮,完成删除索引操作。(4)使用向导在student_db数据库中建立一个视图。答:在企业管理器中,单击主菜单“工具”“向导”,弹出“选择向导”对话框,展开“数据库”节点后选择“创建视图向导”,然后按向导要求选择数据库为 student_db,单击“下一步”按钮,然后选择需要包含在视图中的表后再按向导要求继续操作。(5)使用企业管理器在student_db数据库中建立一个视图。答:启动企业管理器,展开要创建视图的数据库 student_db,右键单击“视图”项,在弹出的菜单中单击“新建视图”命令,弹出“新建视图”对话框。在“新建视图”对话框中首先单击“添加表”工具按钮或在选定区单击鼠标右键,在弹出的菜单中单击“添加表”命令,弹出“添加表”对话框。在“添加表”对话框中选择创建视图所需的表或视图,单击“添加”按钮,添加完后单击“关闭”按钮。在选定列区中选择将要在视图中所包含的数据列,此时将会在 SQL脚本编辑区显示与之对应的 SQL脚本。当选择完所有列后,单击工具栏中的“运行”按钮,在数据显示区将显示包含在视图中的数据行。单击“保存”按钮,弹出“另存为”对话框,输入视图的名字,单击“确定”按钮,完成视图创建的工作。(6)使用CREATEVIEW 语句在st

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论