最新《数据库原理》实验3(使用SQL-Server管理数据表).doc

上传人:1595****071 文档编号:48000601 上传时间:2022-10-04 格式:DOC 页数:25 大小:1,003KB
返回 下载 相关 举报
最新《数据库原理》实验3(使用SQL-Server管理数据表).doc_第1页
第1页 / 共25页
最新《数据库原理》实验3(使用SQL-Server管理数据表).doc_第2页
第2页 / 共25页
点击查看更多>>
资源描述

《最新《数据库原理》实验3(使用SQL-Server管理数据表).doc》由会员分享,可在线阅读,更多相关《最新《数据库原理》实验3(使用SQL-Server管理数据表).doc(25页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-date数据库原理实验3(使用SQL-Server管理数据表)实验六:使用SQL Server创建及管理数据表实验三:使用SQL Server管理数据表一、实验目的1. 熟悉数据表的特点,理解数据库模式的概念;2. 了解主键约束、外键约束、UNIQUE约束和CHECK约束的创建和应用;3. 熟悉在Management Studio中创建、编辑及删除数据表;4. 熟悉使用T-S

2、QL语句创建、修改及删除数据表;二、实验环境已安装SQL Server 2005 企业版的计算机;三、实验学时2学时四、实验要求1. 了解表的结构特点;2. 了解SQL Server的基本数据类型;3. 了解各种数据完整性约束;4. 熟悉使用T-SQL语法;5. 完成实验报告。五、实验准备知识(也可参考SQL Server联机丛书)1. 创建表时一定要指定表名,名个列的列名,数据类型和长度。同时也可为某个列指定是否允许为空(NULL|NOT NULL),列级约束(PRIMARY KEY|UNIQUE|FOREIGN KEY|CHECK),默认值,标识列以及表级约束。2. 命令方式下创建数据表

3、(命令中用方括号括起的部分为可选项,|表示二者选其一)CREATE TABLE 表名( 列名1 数据类型(长度) NULL|NOT NULL /设置列是否为空 CONSTRAINT constraint_name DEFAULT 默认表达式 | IDENTITY ( 标识种子 ,增长值) /设置列的默认值或是否为标识列 CONSTRAINT constraint_name PRIMARY KEY| UNIQUE| FOREIGN KEY REFERENCES 参照表(参照列) /设置列级约束 | CHECK (逻辑表达式) ,列名2 /定义其它的列 ,表级约束 /定义表级约束 )3. 命令方式

4、下修改表(ALTER TABLE命令中有三个子句,一个命令中只能使用一个子句)ALTER TABLE 表名 ALTER COLUMN 列名 数据类型(长度)/修改表中已有的某个列的类型或长度 | ADD 列定义 /添加列,与创建表时的列定义一致 | 表级约束 /添加表级约束,与创建表时的表级约束一致 ,.n /一个ADD子句中允许添加多项| DROP CONSTRAINT 约束名 /删除表中指定名称的约束 | COLUMN 列名 /删除表中指定名称的列 ,.n /一个DROP子句中允许删除多项4. 命令方式下删除表DROP TABLE 表名 ,.n / DROP命令中可删除多个表六、实验示例两

5、个示例:l 一个是书上的学生选课数据库S_T,S_T数据库中有学生表student,课程表course和学生选课表sc。各表的结构如下:学生表studentSnochar(9)Not nullprimary key学号Snamevarchar(20)Not null姓名Ssexchar(2)Not null性别SagesmallintNot null年龄Sdeptvarchar(20)Not null系别课程表courseCnochar(4)Not nullprimary key课程号Cnamevarchar(40)Not null课程名Cpnochar(4)先行课Ccreditsmallin

6、t Not null学分学生选课表scSnochar(9)Not nullprimary key学号Cnochar(4)Not nullprimary key课程号Gradesmallint成绩l 另一个示例是某公司的产品销售数据库company,company数据库中存在人事表employee、客户表customer、销售表sales、销售明细表sale_item、产品表product。各表的结构如下:员工人事表employee emp_nochar(5)Not nullprimary key员工编号emp_namevarchar(10)Not null员工姓名sexchar(2)Not n

7、ull性别deptvarchar(10)Not null所属部门titlevarchar(10)Not null职称date_hireddatetimeNot null雇佣日birthdaydatetimeNull生日salaryintNot null薪水telephonevarchar(20)Null电话addrvarchar(50)null住址客户表customercust_idchar(5)Not nullprimary key客户号cust_namevarchar(20)Not null客户名称addrvarchar(40)Not null客户住址tel_novarchar(20)No

8、t null客户电话zipchar(6)null邮政编码销售主表sales order_nointNot nullprimary key订单编号cust_idchar(5)Not null客户号sale_idchar(5)Not null业务员编号tot_amtnumeric(9,2)Not null订单金额order_datedatetimeNot null订货日期销货明细表sale_item order_nointNot nullprimary key订单编号prod_idchar(5)Not nullprimary key产品编号qtyintNot null销售数量unit_pricen

9、umeric(7,2)Not null单价order_datedatetimenull订单日期产品名称表product prod_idchar(5)Not nullprimary key产品编号prod_namevarchar(20)Not null产品名称1创建表及相应的约束create table employee(emp_no char(5) not null check(emp_no like E-F0-90-90-90-9),emp_name char(10) not null,emp_sex char(1) not null check(emp_sex in (m,f),emp_p

10、hone char (13) not null,emp_add varchar(60) not null,emp_salary char(5) not null check (emp_salary between 60000 and 80000)go2修改表alter table employeeadd constraint ck_salary check (salary between 1000 and 10000)七、实验内容请分别使用Management Studio及T-SQL语句完成以下内容:l 针对S_T数据库:1 依照表结构,创建student表,设置Sno为主键;在Sno列上创

11、建核查约束,要求学号各个位上只能取数字字符;在Ssex列上创建核查约束,要求性别只能取“男”或“女”;在Sage 列上创建核查约束,要求学生的年龄只能在14至38之间。2 在表student中增加新字段 “班级名称(sclass)“,类型为varchar,长度为10;3 在表student中删除字段“班级名称(sclass)”;4 修改表student中字段名为“sname”的字段长度由原来的20改为10;5 依照表结构,创建course表,设置列Cno为主键;在Cno列上创建核查约束,要求课程号只能取数字字符。6 依照表结构,创建sc表,设置主键为Sno与Cno的组合;在Grade列上创建核

12、查约束,限定成绩只能在0-100。7 修改course表,在表中为Cpno列添加一外键约束Fk_Cpno,它参照了course表的主键Cno。8 修改sc表,在表中为Sno添加一外键约束Fk_Sno,它参照了student表中的主键Sno;为Cno添加外键约束Fk_Cno, 它参照了course表中的主键Cno。9 删除数据表student。l 针对company数据库:1 在数据库company中依照表结构创建以上五张表,并设置各表的主键。2 在销售主表sales中添加字段“发票号码” invoice_no,char(10),NOT NULL。3 添加外键约束:a) 在销售主表sales的业

13、务员编号字段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_no,约束名为FK_order_no。d) 在销售明细表sale_item的产品编号字段prod_id上添加外键约束,参照字段为产品名称表product中的产品编号字段

14、prod_id,约束名为FK_prod_id。4 添加核查约束:a) 将员工表employee中的薪水字段salary的值限定在1000至10000间,约束名为CK_salary。b) 将员工表employee中的员工编号字段emp_no设定为以“E”字母开头, 后面跟5位数的编号,约束名为CK_emp_no。c) 将员工表employee中的性别字段设定这取值只能是“男”和“女”。约束名为CK_sex。d) 将销售主表sales中的发票号码字段invoice_no设定为以“I”字母开头,后面跟9位数的编号,约束名为CK_inno。5 为销售主表sales中的字段发票号码invoice_no设置为唯一约束,约束名为UN_inno。6 删除销售主表sales中的字段发票号码invoice_no。七、出现问题及解决方法如出现数据表无法创建或删除等问题,请分析原因,并如何解决?-

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁