您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 数据库课后习题答案(第四版)
数据库原理实验手册实验一实验名称:熟悉SQLSERVER2000环境一、实验目的熟悉SQLSERVER2000提供的服务管理器、企业管理器、查询分析器、客户端和服务器端网络实用工具等常用管理工具的使用。了解Windows身份验证和SQLServer身份验证这两种连接数据库服务器方式的不同,并能够使用某种连接方式登陆上SQLSERVER数据库服务器。学会使用SQLSERVER的联机丛中寻求帮助。二、实验原理使用SQLSERVER2000提供的各种常用管理工具进行有关的操作。三、实验设备安装有SQLSERVER2000的计算机。四、实验内容1.启动SQLSERVER服务。2.打开SQLSERVER的企业管理器,连接上SQLSERVER服务器。展开左边树状窗口的各级结点,观察右边内容窗口的变化。3.在SQLSERVER的企业管理器的树状窗口或内容窗口中选择某一项,点击鼠标右键,了解快捷菜单中的有关功能。4.使用Windows身份验证的连接方式打开SQLSERVER的查询分析器,在查询窗口用USE命令打开样例数据库pubs(也可以从工具栏中的数据库下拉列表中选择pubs数据库)。5.在查询窗口输入execsp_help,运行后察看结果。6.在查询窗口输入select*fromauthors,运行后察看结果。7.在SQLSERVER的查询分析器的“帮助”菜单中点击“目录与索引”,然后在SQLSERVER的联机丛中选“索引”,输入要查找的关键字“sp_help”、“exec”、“select”,了解它们的含义。8.在SQLSERVER的企业管理器中创建数据库S_T,并在该数据库中创建表student、course和sc,在创建表的同时可以创建各种约束。这三个表的结构可以参考书上85页的例5、例6和例7。9.向各个表输入数据,各个表的数据可参考书56页的图2.4。10.在SQLServer的查询分析器中打开S_T数据库,输入书中91页开始的例题,实现对数据库的查询。实验二实验名称:创建和修改数据库一、实验目的熟悉SQLSERVER的企业管理器和查询分析器的用户界面,掌握用企业管理器和查询分析器创建数据库,修改数据库和删除数据库的方法。了解数据库的三种文件类型:主数据文件(.mdf)、次要数据文件(.ndf)和事务日志文件(.ldf)。二、实验原理在企业管理器中实现对数据库的管理及使用T—SQL语句CREATEDATABASE、ALTERDATABASE及DROPDATABASE来实现数据库的创建、修改及删除。三、实验设备安装有SQLSERVER2000的计算机。四、实验示例1.创建名称为testdb的数据库,数据库中包含一个数据文件,逻辑文件名为testdb_data,磁盘文件名为testdb.mdf,文件初始容量为2MB,最大容量为8MB,文件容量递增值为1MB;事务日志文件的逻辑文件名为testdb_log,磁盘文件名为testdb_log.ldf,文件初始容量为1MB,最大容量为5MB,文件容量递增值为1MB。CREATEDATABASEtestdbON(NAME=testdb_data,FILENAME='d:\DATA\testdb.mdf',SIZE=2MB,MAXSIZE=8MB,FILEGROWTH=1MB)LOGON(NAME=’testdb_log’,FILENAME='d:\DATA\testdb_log.ldf',SIZE=1MB,MAXSIZE=5MB,FILEGROWTH=1MB)2.对testdb数据库进行修改:添加一个数据文件,逻辑文件名为testdb2_data,磁盘文件名为testdb2_data.ndf,文件初始容量为1MB,最大容量为5MB,文件容量递增值为1MB。ALTERDATABASEtestdbADDFILE(NAME=testdb2_data,FILENAME='d:\DATA\testdb2.ndf',SIZE=1MB,MAXSIZE=5MB,FILEGROWTH=1MB)五、实验内容分别使用SQLSERVER2000企业管理器和T—SQL语句,按下列要求创建、修改和删除用户数据库。1.删除数据库S_T,在查询分析器中用命令采用默认设置创建数据库S_T(只需给出数据库名)。2.创建名称为company的数据库,数据库中包含一个数据文件,逻辑文件名为company_data,磁盘文件名为company_data.mdf,文件初始容量为5MB,最大容量为15MB,文件容量递增值为1MB;事务日志文件的逻辑文件名为company_log,磁盘文件名为company_log.ldf,文件初始容量为5MB,最大容量为10MB,文件容量递增值为1MB。3.对该数据库进行修改:添加一个数据文件,逻辑文件名为company2_data,磁盘文件名为company2_data.ndf,文件初始容量为1MB,最大容量为5MB,文件容量递增值为1MB;将日志文件company_log的最大容量增加为15MB,文件容量递增值为2MB。4.在company数据库中添加一个文件组TempGroup,并向该文件组中添加一个容量为3MB,最大容量为10MB,递增量为1MB的数据文件,该数据文件的逻辑文件名为company3_data,磁盘文件名为company3_data.ndf。5.在company数据库中删除数据文件company2_data。6.删除数据库company。7.采用默认设置创建数据库company。实验三实验名称:创建和修改数据表一、实验目的熟悉有关数据表的创建和修改等工作,理解数据库模式的概念,了解主键约束、外键约束、UNIQUE约束和CHECK约束的创建和应用。要求学生熟练掌握使用企业管理器和T—SQL语句CREATETABLE、ALTERTABLE及DROPTABLE语句对数据表进行管理。二、实验原理在企业管理器中实现表的创建和修改等工作及使用T—SQL语句CREATETABLE、ALTERTABLE及DROPTABLE来实现数据表的创建、修改及删除。三、实验设备安装有SQLSERVER2000的计算机。四、实验示例两个示例:一个是书上的学生选课数据库S_T,S_T数据库中有学生表student,课程表course和学生选课表sc。各表的结构如下:学生表studentSnochar(5)Notnullprimarykey学号Snamechar(20)Notnull姓名Ssexchar(2)Notnull性别SagesmallintNotnull年龄Sdeptchar(20)Notnull系别课程表courseCnochar(4)Notnullprimarykey课程号Cnamechar(40)Notnull课程名Cpnochar(4)先行课CcreditsmallintNotnull学分学生选课表scSnochar(5)Notnullprimarykey学号Cnochar(4)Notnullprimarykey课程号Gradesmallint成绩另一个示例是某公司的产品销售数据库company,company数据库中存在人事表employee、客户表customer、销售表sales、销售明细表sale_item、产品表product。各表的结构如下:员工人事表employeeemp_nochar(5)Notnullprimarykey员工编号emp_namevarchar(10)Notnull员工姓名sexchar(2)Notnull性别deptvarchar(10)Notnull所属部门titlevarchar(10)Notnull职称date_hireddatetimeNotnull雇佣日birthdaydatetimeNull生日salaryintNotnull薪水telephonevarchar(20)Null电话addrvarchar(50)null住址客户表customercust_idchar(5)Notnullprimarykey客户号cust_namevarchar(20)Notnull客户名称addrvarchar(40)Notnull客户住址tel_novarchar(20)Notnull客户电话zipchar(6)null邮政编码销售主表salesorder_nointNotnullprimarykey订单编号cust_idchar(5)Notnull客户号sale_idchar(5)Notnull业务员编号tot_amtnumeric(9,2)Notnull订单金额order_datedatetimeNotnull订货日期销货明细表sale_itemorder_nointNotnullprimarykey订单编号prod_idchar(5)Notnullprimarykey产品编号qtyintNotnull销售数量unit_pricenumeric(7,2)Notnull单价order_datedatetimenull订单日期产品名称表productprod_idchar(5)Notnullprimarykey产品编号prod_namevarchar(20)Notnull产品名称1.创建表及相应的约束createtableemployee1(emp_nochar(5)notnullcheck(emp_nolike'[E-F][0-9][0-9][0-9][0-9]'),emp_namechar(10)notnull,emp_sexchar(1)notnullcheck(emp_sexin('m','f')),emp_phonechar(13)notnull,emp_addvarchar(60)notnull,emp_salarychar(5)notnullcheck(emp_salarybetween60000and80000))go2.修改表altertableemployeeaddconstraintck_phonecheck(phonelike’[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]’)五、实验内容分别在SQLSERVER2000企业管理器和在查询分析分析器中使用T—SQL语句完成以下操作:针对S_T数据库:1.创建student表,设置Sno为主键;在Sno列上创建核查约束,要求学号各个位上只能取数字字符;在Ssex列上创建核查约束,要求性别只能取“男”或“女”;在Sage列上创建核查约束,要求学生的年龄只能在14至38之间。2.创建course表,设置列Cno为主键;在Cno列上创建核查约束,要求课程号只能取数字字符。3.创建sc表,设置主键为Sno与Cno的组合;在Grade列上创建核查约束,限定成绩只能在0-100。4.修改course表,在表中为Cpno列添加一外键约束Fk_Cpno,它参照了course表的主键Cno。5.修改sc表,在表中为Sno添加一外键约束Fk_Sno,它参照了student表中的主键Sno;为Cno添加外键约束Fk_Cno,它参照了course表中的主键Cno。针对company数据库:1.在数据库company中创建以上五张表,并设置各表的主键。2.在销售主表sales中添加字段“发票号码”invoice_no,char(10),NOTNULL。3.添加外键约束:a)在销售主表sales的业务员编号字段sale_id上添加外键约束,参照字段为员工表employee中的字段员工编号emp_no,约束名为FK_sale_id。b)在销售主表sales的客户号字段cust_id上添加外键约束,参照字段为客户表customer中的字段客户号cust_id,约束名为FK_cust_id。c)在销售明细表sale_item的订单编号字段order_no上添加外键约束,参照字段为销售主表sales中的字段订单编号order
本文标题:数据库课后习题答案(第四版)
链接地址:https://www.777doc.com/doc-2428849 .html