SQL SERVER练习题及答案学习资料
- 格式:doc
- 大小:19.50 KB
- 文档页数:8
--创建数据库USE[master]GOCREATEDATABASE[test]ONPRIMARY(NAME=N'test',FILENAME=N'D:\SQL\DataBase\test.mdf',SIZE=3072KB,MAXSIZE=UNLIMITED,FILEGROWTH= 1024KB)LOG ON(NAME=N'test_log',FILENAME=N'D:\SQL\DataBase\test_log.ldf',SIZE= 1024KB,MAXSIZE= 2048GB,FILEGROWTH= 10%)GOALTERDATABASE[test]SETCOMPATIBILITY_LEVEL= 90GOIF (1 =FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))beginEXEC[test].[dbo].[sp_fulltext_database]@action='enable'endGOALTERDATABASE[test]SETANSI_NULL_DEFAULTOFFGOALTERDATABASE[test]SETANSI_NULLSOFFGOALTERDATABASE[test]SETANSI_PADDINGOFFGOALTERDATABASE[test]SETANSI_WARNINGSOFFGOALTERDATABASE[test]SETARITHABORTOFFGOALTERDATABASE[test]SETAUTO_CLOSEOFFGOALTERDATABASE[test]SETAUTO_CREATE_STATISTICSONGOALTERDATABASE[test]SETAUTO_SHRINKOFFGOALTERDATABASE[test]SETAUTO_UPDATE_STATISTICSONGOALTERDATABASE[test]SETCURSOR_CLOSE_ON_COMMITOFFGOALTERDATABASE[test]SETCURSOR_DEFAULTGLOBALGOALTERDATABASE[test]SETCONCAT_NULL_YIELDS_NULLOFFGOALTERDATABASE[test]SETNUMERIC_ROUNDABORTOFFGOALTERDATABASE[test]SETQUOTED_IDENTIFIEROFFGOALTERDATABASE[test]SETRECURSIVE_TRIGGERSOFFGOALTERDATABASE[test]SETDISABLE_BROKERGOALTERDATABASE[test]SETAUTO_UPDATE_STATISTICS_ASYNCOFF GOALTERDATABASE[test]SETDATE_CORRELATION_OPTIMIZATIONOFF GOALTERDATABASE[test]SETTRUSTWORTHYOFFGOALTERDATABASE[test]SETALLOW_SNAPSHOT_ISOLATIONOFFGOALTERDATABASE[test]SETPARAMETERIZATIONSIMPLEGOALTERDATABASE[test]SETREAD_COMMITTED_SNAPSHOTOFFGOALTERDATABASE[test]SETREAD_WRITEALTERDATABASE[test]SETRECOVERYSIMPLEGOALTERDATABASE[test]SETMULTI_USERGOALTERDATABASE[test]SETPAGE_VERIFY CHECKSUMGOALTERDATABASE[test]SETDB_CHAININGOFFGO--创建表USE testCREATETABLE emp(EMPNO NUMERIC(5, 0)NOTNULL,ENAME NVARCHAR(10),JOB NVARCHAR(9),MGR NUMERIC(5, 0),HIREDATE DATETIME,SAL NUMERIC(7, 2),COMM NUMERIC(7, 2),DEPTNO NUMERIC(2, 0),)CREATETABLE dept(DEPTNO NUMERIC(2),DNAME NVARCHAR(14),LOC NVARCHAR(13),)--插入数据INSERTINTO EMP VALUES(7369,'SMITH','CLERK', 7902,'2000-12-17', 800,NULL, 20)。
SQLserver期末考试试题及答案SQL Server期末考试试题及答案一、选择题1. 下列哪个不是SQL Server的数据类型?A. intB. varcharC. booleanD. datetime答案:C2. 下列哪个不是SQL Server的约束类型?A. 主键约束B. 外键约束C. 唯一约束D. 默认约束答案:D3. 下列哪个不是SQL Server的聚合函数?A. SUMB. AVGC. COUNTD. MAX答案:E(不存在)4. 下列哪个不是SQL Server的连接方式?A. INNER JOINB. LEFT JOINC. RIGHT JOIND. FULL JOIN答案:E(不存在)5. 下列哪个不是SQL Server的系统函数?A. GETDATEB. LENC. CONVERTD. RAND答案:E(不存在)二、填空题1. SQL Server中,使用______语句可以创建数据库。
答案:CREATE DATABASE2. SQL Server中,使用______语句可以创建表。
答案:CREATE TABLE3. SQL Server中,使用______语句可以删除表。
答案:DROP TABLE4. SQL Server中,使用______语句可以插入数据。
答案:INSERT INTO5. SQL Server中,使用______语句可以更新数据。
答案:UPDATE三、简答题1. 什么是SQL Server?答案:SQL Server是一种关系型数据库管理系统,由微软公司开发。
它支持SQL语言,可以用于存储、管理和检索数据。
2. SQL Server中,什么是主键?答案:主键是一种约束,用于唯一标识表中的每一行数据。
它可以是一个或多个列,且不允许为空值。
3. SQL Server中,什么是外键?答案:外键是一种约束,用于建立表与表之间的关系。
它指向另一个表中的主键,用于保证数据的完整性和一致性。
2013年(下)全国信息技术水平考试数据库应用系统设计技术水平证书(SQL Server)考试试卷第一大题:单选题(30 分)1. (1分)数据模型的三要素不包括()。
(A) 数据结构(B) 数据操作(C) 数据完整性约束(D) 数据恢复2. (1分)数据的存储结构与数据逻辑结构之间的独立性称为数据的()。
(A) 结构独立性(B) 物理独立性(C) 逻辑独立性(D) 分布独立性3. (1分) 如果对于实体集A中的每一个实体,实体集B中可有多个实体与之联系;反之,对于实体集B中的每一个实体,实体集A中也可有多个实体与之联系。
则称实体集A与B具有()。
(A) 1:1联系(B) 1:n联系(C) n:m联系(D) 多种联系4. (1分)当对关系R和S使用自然联接时,一般要求R和S至少含有一个共同的()。
(A) 元组(B) 关键字(C) 记录(D) 属性5. (1分)若关系模式R(A,B,C,D,E)上的函数依赖集F={AB->C,A->D,A->E},为了满足BCNF,可以将R分解为()。
(A) R1(A,B,C,D) R2(A,E)(B) R1(A,B,C) R2(A,D,E)(C) R1(A,B,C) R2(D,E)(D) R1(A,B) R2(A,C,D,E)6. (1分) SQL语言查询一次的结果是一个()。
(A) 元组(B) 表(C) 属性(D) 数据库7. (1分)在关系模式R(U,F)中,如果X→Y,且存在X的真子集X1,使X1→Y,则称函数依赖X→Y为()。
(A) 平凡函数依赖(B) 部分函数依赖(C) 完全函数依赖(D) 传递函数依赖8 . (1分)在Transact-SQL中,下列命令能让程序完全跳出循环的是()。
(A) CASE(B) WAIT(C) BREAK (D) CONTINU E9 . (1分) 在Transact-SQL中,下列选项不属于数值型数据类型的是()。
Microsoft SQL Server数据库管理练习题参考答案1. 数据库的备份和还原是维护数据库的重要任务,请简要说明在Microsoft SQL Server中如何备份和还原数据库。
在Microsoft SQL Server中,可以使用SQL Server Management Studio (SSMS)工具来备份和还原数据库。
备份数据库:1) 打开SSMS工具,连接到SQL Server数据库引擎。
2) 在对象资源管理器中,展开数据库文件夹,右键点击要备份的数据库,选择“任务”->“备份”。
3) 在“备份数据库”对话框中,选择备份类型、备份到的位置、备份集的名称等设置,然后点击“确定”进行备份。
还原数据库:1) 打开SSMS工具,连接到SQL Server数据库引擎。
2) 在对象资源管理器中,展开数据库文件夹,右键点击要还原的数据库,选择“任务”->“还原”->“数据库”。
3) 在“还原数据库”对话框中,选择备份集、还原到的位置、还原选项等设置,然后点击“确定”进行还原。
2. 在数据库设计中,为了保持数据的一致性和完整性,我们常常使用约束来规定数据的规则。
请简要说明在Microsoft SQL Server中如何添加和删除约束。
添加约束:1) 打开SSMS工具,连接到SQL Server数据库引擎。
2) 在对象资源管理器中,展开数据库文件夹,展开要添加约束的表所在的文件夹,右键点击该表,选择“设计”。
3) 在设计视图中,选择要添加约束的列,在属性窗口中选择“约束”一项,点击“...”按钮。
4) 在“约束”对话框中,选择要添加的约束类型(如主键、唯一性约束、外键等),设置约束的名称和规则,然后点击“确定”完成添加。
删除约束:1) 打开SSMS工具,连接到SQL Server数据库引擎。
2) 在对象资源管理器中,展开数据库文件夹,展开要删除约束的表所在的文件夹,右键点击该表,选择“设计”。
SQL Server复习题一、选择题1、数据库系统的主要特征是()A、数据的冗余度小B、数据的结构化C、数据独立性高D、数据可以共享2、下面不属于关系数据库管理系统的是( B )A、OracleB、IMSC、SQL ServerD、DB23、数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是(A)。
A、DBS包括DB和DBMSB、DBMS包括DB和DBSC、DB包括DBS和DBMSD、DBS就是DB,也就是DBMS4、(C)是数据库系统的核心,它负责数据库的配置、存取、管理和维护等工作。
A、操作系统B、关系模型C、数据库管理系统D、数据库5、下列四项说法中不正确的是(C ) 。
A、数据库减少了数据冗余B、数据库中的数据可以共享C、数据库避免了一切数据的重复D、数据库具有较高的数据独立性6、下列特点中哪个不是数据库系统阶段的特点( B)。
A.数据共享B.数据冗余大C.完善的数据控制D.数据和程序相互独立7、数据库设计中概念模型设计阶段的主要描述工具是(C)。
A. 数据字典B. 流程图C. E-R图D.二维表格8、关系模型的基本数据结构是(B)A、树B、二维表C、图D、二叉树9、将E-R模型转换成关系模型的过程,属于数据库设计的( C)阶段。
A、需求分析B、概念设计C、逻辑设计D、物理设计10、在E-R模型中,实体间的联系用(C)表示A、矩形B、直线C、菱形D、椭圆11、为了防止多个用户对数据库的同一数据进行非法存取操作,DBMS必须提供(A).A、安全性保护B、完整性保护C、故障恢复D、并发控制12、按照数据模型分类,数据库管理系统可分为(C)。
A.关系型,概念型,网状B.模式,概念模式,外模式C.关系型,层次型,网状模型D.SQL Server,oracle,DB213、SQL Server安装程序创建4个系统数据库,下列哪个不是系统数据库(C)。
A. masterB. modelC. AdventureWorksD. msdb14、SQL server数据库文件有三类,其中主数据文件的后缀为(D)A、NDFB、LDFC、MDFD、IDF15、SQL server 数据库文件有3类,其中日志文件的后缀为(D)。
SQL SERVER练习题及答案题目1:问题描述:为管理岗位业务培训信息,建立3个表:S (S#,SN,SD,SA) S#,SN,SD,SA 分别代表学号、学员姓名、所属单位、学员年龄C (C#,CN ) C#,CN 分别代表课程编号、课程名称SC ( S#,C#,G ) S#,C#,G 分别代表学号、所选修的课程编号、学习成绩1. 使用标准SQL嵌套语句查询选修课程名称为’税收基础’的学员学号和姓名--实现代码:SELECT SN,SD FROM SWHERE [S#] IN(SELECT [S#] FROM C,SCWHERE C.[C#]=SC.[C#]AND CN=N\'税收基础\')的学员姓名和所属单位2. 使用标准SQL嵌套语句查询选修课程编号为’C2’--实现代码:SELECT S.SN,S.SD FROM S,SCWHERE S.[S#]=SC.[S#]AND SC.[C#]=\'C2\'的学员姓名和所属单位3. 使用标准SQL嵌套语句查询不选修课程编号为’C5’--实现代码:SELECT SN,SD FROM SWHERE [S#] NOT IN(SELECT [S#] FROM SCWHERE [C#]=\'C5\')4. 使用标准SQL嵌套语句查询选修全部课程的学员姓名和所属单位--实现代码:SELECT SN,SD FROM SWHERE [S#] IN(SELECT [S#] FROM SCRIGHT JOINC ON SC.[C#]=C.[C#] GROUP BY [S#]HAVING COUNT(*)=COUNT([S#]))5. 查询选修了课程的学员人数--实现代码:SELECT 学员人数=COUNT(DISTINCT [S#]) FROM SC6. 查询选修课程超过5门的学员学号和所属单位--实现代码:SELECT SN,SD FROM SWHERE [S#] IN(SELECT [S#] FROM SCGROUP BY [S#]HAVING COUNT(DISTINCT [C#])>5)题目2问题描述:本题用到下面三个关系表:CARD 借书卡。
SQLServer数据库试题及答案选择题:(20分)1、根据关系数据基于的数据模型——关系模型的特征判断下列正确的一项:(___)A、只存在一对多的实体关系,以图形方式来表示。
B、以二维表格结构来保存数据,在关系表中不允许有重复行存在。
C、能体现一对多、多对多的关系,但不能体现一对一的关系。
D、关系模型数据库是数据库发展的最初阶段。
2、在“连接”组中有两种连接认证方式,其中在(___)方式下,需要客户端应用程序连接时提供登录时需要的用户标识和密码。
A、Windows身份验证B、SQL Server 身份验证C、以超级用户身份登录时D、其他方式登录时3、SQL Server 2000 在安装之前,应注意的事项:(___)A、SQL Server 2000的任何版本在安装时都不用考虑操作系统的制约。
B、SQL Server 2000的安装对硬件的要求不作任何限制。
C、SQL Server 2000 在安装之前,必须在操作系统级启用TCP/IP。
D、在Windows NT Server 4.0上安装SQL Server 2000时,最低的要求是必须安装Service Pack 4(SP4)以上。
4、关系数据库中,主键是(1___),主键的建立有(2___)种方法,当运用Transact-SQL 语句创建主键时,可以是(3___)。
⑴ A、为标识表中唯一的实体B、创建唯一的索引,允许空值C、只允许以表中第一字段建立D、允许有多个主键的⑵ A、一 B、二 C、三 D、四⑶ A、create table table1(column1 char(13) not null primary,column2 int not) on primary;B、alter table table1 with notcheck addconstraint [PK_table1] primary key nonclustered( column1) on primary;C、alter table table1 column1 primary key ;5、表在数据库中是一个非常重要的数据对象,它是用来(1___)各种数据内容的,数据库创建后就可以创建表了,创建表可以用(2___)等方法来创建。
各章习题及答案第一章关系数据库原理一、选择及填空题(1) 在下列四个选项中,不属于基本关系运算的是【1】A) 连接B) 投影C) 选择D) 排序(2) 如果一个班只能有一个班长,而且一班长不能同时担任其它班的班长,班级和班长两个实体之间的关系属于【2】A) 一对一联系B) 一对二联系C) 多对多联系D) 一对多联系(3) 扩展名为mdf的文件是【3】A) 主数据文件B) 次数据文件C) 日志文件D) 项目文件(4). SQL Server系统中的所有系统级信息存储于哪个数据库( )。
A. masterB.modelC. tempdbD.msdb1. SQL Server的物理存储主要包括3类文件: 、、。
2.若一个关系为R(学生号,姓名,性别,年龄),则_ 可以作为该关系的主码,姓名、性别和年龄为该关系的属性。
二、简答题1、什么是数据库?2、数据库系统有哪些特点?3、试给出三个实际情况的联系,要求实体之间具有一对一、一对多、多对多各种不同的联系。
4、学校中对教师教学进行评价,被评对象为教师,评价对象有同行教师,学生,专家。
请用E—R图画出教学评价的概念模型。
第一章关系数据库原理(答案)一、选择及填空题(1)~(4)daaa1、主数据文件,次数据文件,日志文件2、学生号,非主或非码二、简答题1、数据库:存储在一起的相关数据的集合(一个表内,表间直接关联,表间间接关联),无有害的或不必要的冗余(重复),可为多种应用服务,数据可以共享,对于拆、删、改、查等操作均可按照一种公共的可控制的方法进行。
数据被结构化。
2、答案:1.数据结构化2.数据的共享性高,冗余度低,易扩展3.数据的独立性高4.数据由DBMS统一管理和控制3、答案:一对一:观众和座位一对多:班级和学生多对多:学生与课程4、对于教学评价,对同一位被评教师而言,对其评价的学生、同行教师、专家都应该是多名,而且每一次成功评价后会得到一个评价数据,所以可得到对教师教学评价的E-R模型如下图所示。
SQL-Server-期末考试题目及答案SQL Server 期末考试题目及答案一、单选题1. Microsoft公司的SQL Server2000数据库管理系统一般只能运行于()。
A. Windows平台B. UNIX平台C. LINX平台D. NetWare平台2. 当一条SELECT语句访问一大表里的有限几行数据时,SQL Server2000通常会()。
A. 为数据加上页级锁B. 为数据加上行级锁C. 需要用户的干涉和参与D. 使用户独占数据库3. 当采用Windows认证方式登录数据库服务器时,SQL Server2000客户端软件会向操作系统请求一个()。
A. 信任连接B. 集成C. 并发控制D. 数据转换服务4. 以下对SQL Server2000描述不正确的是()。
A. 支持XMLB. 支持用户自定义函数C. 支持集成D. 支持网状数据模型5. 如果在SQL Server2000上运行一个非常大的数据库,为取得较好效果应选用安装()。
A. 企业版B. 标准版C. 个人版D. 开发版6. 提高SQL Server2000性能的最佳方法之一是()。
A. 增大硬盘空间B. 增加存C. 减少数据量D. 采用高分辨率显示器7. SQL Server2000标准版不支持的操作系统是()。
A. Windows 2000 ServerB. Windows NT ServerC. Windows98D. Windows 2000 Advanced Server8. 如果希望完全安装SQL Server2000,则应选择()。
A. 典型安装B. 最小安装C. 自定义安装D. 仅连接9. 要想使SQL Server2000数据库管理系统开始工作,必须首先启动()。
A. SQL Server服务器B. 查询分析器C. 网络实用工具D. 数据导入和导出程序10. 用于配置客户端网络连接的工具是()。
A. 企业管理器B. 客户端网络实用工具C. 查询分析器D. 联机帮助文档11. SQL Server2000的物理存储主要包括3类文件()。
SQLServer数据库考试试题与答案(doc8页)SQLServer数据库考试试题与答案(doc 8页)选择题:(20分)1、根据关系数据基于的数据模型——关系模型的特征判断下列正确的⼀项:(___)A、只存在⼀对多的实体关系,以图形⽅式来表⽰。
B、以⼆维表格结构来保存数据,在关系表中不允许有重复⾏存在。
C、能体现⼀对多、多对多的关系,但不能体现⼀对⼀的关系。
D、关系模型数据库是数据库发展的最初阶段。
2、在“连接”组中有两种连接认证⽅式,其中在(___)⽅式下,需要客户端应⽤程序连接时提供登录时需要的⽤户标识和密码。
A、Windows⾝份验证B、SQL Server ⾝份验证C、以超级⽤户⾝份登录时D、其他⽅式登录时3、SQL Server 2000 在安装之前,应注意的事项:(___)A、SQL Server 2000的任何版本在安装时都不⽤考虑操作系统的制约。
B、SQL Server 2000的安装对硬件的要求不作C、alter table table1 column1 primary key ;5、表在数据库中是⼀个⾮常重要的数据对象,它是⽤来(1___)各种数据内容的,数据库创建后就可以创建表了,创建表可以⽤(2___)等⽅法来创建。
⑴ A、显⽰ B、查询 C、存放 D、检索⑵ A、企业管理器 B、查询分析器C、OSQLD、企业管理器和CREATE TABLE语句6、为数据表创建索引的⽬的是(1___),可以在创建表时⽤(2___)来创建唯⼀索引,也可以⽤(2___)来创建唯⼀索引。
⑴ A、提⾼查询的检索性能 B、创建唯⼀索引C、创建主键D、归类⑵ A、设置主键约束,设置唯⼀约束B、Create table,Create indexC、设置主键约束,Create indexD、以上都可以7、在Transact-SQL语法中,⽤来插⼊数据的命令是(___),⽤于更新的命令是(___)。
A、INSERT,UPDATEB、UPDATE,INSERTC、DELETE,UPDATED、CREATE,INSERT INTO8、在Transact-SQL语法中,SELECT语句的完整语法较复杂,但⾄少包括的部分(1___),使⽤关键字(2___)可以把重复⾏屏蔽,将多个查询结果返回⼀个结果集合的运算符是(3___),如果在SELECT语句中使⽤集合函数时,⼀定在后⾯使⽤(4___)。
S Q L S E R V E R练习题及答案题目1:问题描述:为管理岗位业务培训信息,建立3个表:S (S#,SN,SD,SA) S#,SN,SD,SA 分别代表学号、学员姓名、所属单位、学员年龄C (C#,CN ) C#,CN 分别代表课程编号、课程名称SC ( S#,C#,G ) S#,C#,G 分别代表学号、所选修的课程编号、学习成绩1. 使用标准SQL嵌套语句查询选修课程名称为’税收基础’的学员学号和姓名--实现代码:SELECT SN,SD FROM SWHERE [S#] IN(SELECT [S#] FROM C,SCWHERE C.[C#]=SC.[C#]AND CN=N\'税收基础\')2. 使用标准SQL嵌套语句查询选修课程编号为’C2’的学员姓名和所属单位--实现代码:SELECT S.SN,S.SD FROM S,SCWHERE S.[S#]=SC.[S#]AND SC.[C#]=\'C2\'3. 使用标准SQL嵌套语句查询不选修课程编号为’C5’的学员姓名和所属单位--实现代码:SELECT SN,SD FROM SWHERE [S#] NOT IN(SELECT [S#] FROM SCWHERE [C#]=\'C5\')4. 使用标准SQL嵌套语句查询选修全部课程的学员姓名和所属单位--实现代码:SELECT SN,SD FROM SWHERE [S#] IN(SELECT [S#] FROM SCRIGHT JOINC ON SC.[C#]=C.[C#] GROUP BY [S#]HAVING COUNT(*)=COUNT([S#]))5. 查询选修了课程的学员人数--实现代码:SELECT 学员人数=COUNT(DISTINCT [S#]) FROM SC6. 查询选修课程超过5门的学员学号和所属单位--实现代码:SELECT SN,SD FROM SWHERE [S#] IN(SELECT [S#] FROM SCGROUP BY [S#]HAVING COUNT(DISTINCT [C#])>5)题目2问题描述:本题用到下面三个关系表:CARD 借书卡。
CNO 卡号,NAME 姓名,CLASS 班级BOOKS 图书。
BNO 书号,BNAME 书名,AUTHOR 作者,PRICE 单价,QUANTITY 库存册数BORROW 借书记录。
CNO 借书卡号,BNO 书号,RDATE 还书日期备注:限定每人每种书只能借一本;库存册数随借书、还书而改变。
要求实现如下15个处理:1.写出建立BORROW表的SQL语句,要求定义主码完整性约束和引用完整性约束。
2.找出借书超过5本的读者,输出借书卡号及所借图书册数。
3.查询借阅了\"水浒\"一书的读者,输出姓名及班级。
4.查询过期未还图书,输出借阅者(卡号)、书号及还书日期。
5.查询书名包括\"网络\"关键词的图书,输出书号、书名、作者。
6.查询现有图书中价格最高的图书,输出书名及作者。
7.查询当前借了\"计算方法\"但没有借\"计算方法习题集\"的读者,输出其借书卡号,并按卡号降序排序输出。
8.将\"C01\"班同学所借图书的还期都延长一周。
9.从BOOKS表中删除当前无人借阅的图书记录。
10.如果经常按书名查询图书信息,请建立合适的索引。
11.在BORROW表上建立一个触发器,完成如下功能:如果读者借阅的书名是\"数据库技术及应用\",就将该读者的借阅记录保存在BORROW_SAVE表中(注ORROW_SAVE表结构同BORROW表)。
12.建立一个视图,显示\"力01\"班学生的借书信息(只要求显示姓名和书名)。
13.查询当前同时借有\"计算方法\"和\"组合数学\"两本书的读者,输出其借书卡号,并按卡号升序排序输出。
14.假定在建BOOKS表时没有定义主码,写出为BOOKS表追加定义主码的语句。
15.对CARD表做如下修改:a. 将NAME最大列宽增加到10个字符(假定原为6个字符)。
b. 为该表增加1列NAME(系名),可变长,最大20个字符。
1. 写出建立BORROW表的SQL语句,要求定义主码完整性约束和引用完整性约束--实现代码:CREATE TABLE BORROW(CNO int FOREIGN KEY REFERENCES CARD(CNO),BNO int FOREIGN KEY REFERENCES BOOKS(BNO),RDATE datetime,PRIMARY KEY(CNO,BNO))2. 找出借书超过5本的读者,输出借书卡号及所借图书册数--实现代码:SELECT CNO,借图书册数=COUNT(*)FROM BORROWGROUP BY CNOHAVING COUNT(*)>53. 查询借阅了\"水浒\"一书的读者,输出姓名及班级--实现代码:SELECT * FROM CARD cWHERE EXISTS(SELECT * FROM BORROW a,BOOKS bWHERE a.BNO=b.BNOAND b.BNAME=N\'水浒\'AND O=O)4. 查询过期未还图书,输出借阅者(卡号)、书号及还书日期--实现代码:SELECT * FROM BORROWWHERE RDATE<GETDATE()5. 查询书名包括\"网络\"关键词的图书,输出书号、书名、作者--实现代码:SELECT BNO,BNAME,AUTHOR FROM BOOKSWHERE BNAME LIKE N\'%网络%\'6. 查询现有图书中价格最高的图书,输出书名及作者--实现代码:SELECT BNO,BNAME,AUTHOR FROM BOOKSWHERE PRICE=(SELECT MAX(PRICE) FROM BOOKS)7. 查询当前借了\"计算方法\"但没有借\"计算方法习题集\"的读者,输出其借书卡号,并按卡号降序排序输出--实现代码:SELECT OFROM BORROW a,BOOKS bWHERE a.BNO=b.BNO AND b.BNAME=N\'计算方法\'AND NOT EXISTS(SELECT * FROM BORROW aa,BOOKS bbWHERE aa.BNO=bb.BNOAND bb.BNAME=N\'计算方法习题集\'AND O=O)ORDER BY O DESC8. 将\"C01\"班同学所借图书的还期都延长一周--实现代码:UPDATE b SET RDATE=DATEADD(Day,7,b.RDATE)FROM CARD a,BORROW bWHERE O=OAND a.CLASS=N\'C01\'9. 从BOOKS表中删除当前无人借阅的图书记录--实现代码:DELETE A FROM BOOKS aWHERE NOT EXISTS(SELECT * FROM BORROWWHERE BNO=a.BNO)10. 如果经常按书名查询图书信息,请建立合适的索引--实现代码:CREATE CLUSTERED INDEX IDX_BOOKS_BNAME ON BOOKS(BNAME) 11. 在BORROW表上建立一个触发器,完成如下功能:如果读者借阅的书名是\"数据库技术及应用\",就将该读者的借阅记录保存在BORROW_SAVE表中(注ORROW_SAVE表结构同BORROW表)--实现代码:CREATE TRIGGER TR_SAVE ON BORROWFOR INSERT,UPDATEASIF @@ROWCOUNT>0INSERT BORROW_SAVE SELECT i.*FROM INSERTED i,BOOKS bWHERE i.BNO=b.BNOAND b.BNAME=N\'数据库技术及应用\'12. 建立一个视图,显示\"力01\"班学生的借书信息(只要求显示姓名和书名)--实现代码:CREATE VIEW V_VIEWASSELECT ,b.BNAMEFROM BORROW ab,CARD a,BOOKS bWHERE O=OAND ab.BNO=b.BNOAND a.CLASS=N\'力01\'13. 查询当前同时借有\"计算方法\"和\"组合数学\"两本书的读者,输出其借书卡号,并按卡号升序排序输出--实现代码:SELECT OFROM BORROW a,BOOKS bWHERE a.BNO=b.BNOAND b.BNAME IN(N\'计算方法\',N\'组合数学\')GROUP BY OHAVING COUNT(*)=2ORDER BY O DESC14. 假定在建BOOKS表时没有定义主码,写出为BOOKS表追加定义主码的语句--实现代码:ALTER TABLE BOOKS ADD PRIMARY KEY(BNO)15.1 将NAME最大列宽增加到10个字符(假定原为6个字符)--实现代码:ALTER TABLE CARD ALTER COLUMN NAME varchar(10)15.2 为该表增加1列NAME(系名),可变长,最大20个字符--实现代码:ALTER TABLE CARD ADD 系名 varchar(20)。