下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上精选优质文档-倾情为你奉上专心-专注-专业专心-专注-专业精选优质文档-倾情为你奉上专心-专注-专业实验三:使用SQL Server管理数据表一、实验目的熟悉数据表的特点,理解数据库模式的概念;了解主键约束、外键约束、UNIQUE约束和CHECK约束的创建和应用;熟悉在Management Studio中创建、编辑及删除数据表;熟悉使用T-SQL语句创建、修改及删除数据表;二、实验环境已安装SQL Server 2005 企业版的计算机;三、实验学时2学时四、实验要求了解表的结构特点;了解SQL Server的基本数据类型;了解各种数据完整性约束;熟悉使用T-SQL语
2、法;完成实验报告。五、实验准备知识(也可参考SQL Server联机丛书)创建表时一定要指定表名,名个列的列名,数据类型和长度。同时也可为某个列指定是否允许为空(NULL|NOT NULL),列级约束(PRIMARY KEY|UNIQUE|FOREIGN KEY|CHECK),默认值,标识列以及表级约束。命令方式下创建数据表 (命令中用方括号括起的部分为可选项,|表示二者选其一)CREATE TABLE 表名( 列名1 数据类型(长度) NULL|NOT NULL /设置列是否为空 CONSTRAINT constraint_name DEFAULT 默认表达式 | IDENTITY ( 标识
3、种子 ,增长值) /设置列的默认值或是否为标识列 CONSTRAINT constraint_name PRIMARY KEY| UNIQUE| FOREIGN KEY REFERENCES 参照表(参照列) /设置列级约束 | CHECK (逻辑表达式) ,列名2 /定义其它的列 ,表级约束 /定义表级约束 )命令方式下修改表(ALTER TABLE命令中有三个子句,一个命令中只能使用一个子句)ALTER TABLE 表名 ALTER COLUMN 列名 数据类型(长度)/修改表中已有的某个列的类型或长度 | ADD 列定义 /添加列,与创建表时的列定义一致 | 表级约束 /添加表级约束,与
4、创建表时的表级约束一致 ,.n /一个ADD子句中允许添加多项| DROP CONSTRAINT 约束名 /删除表中指定名称的约束 | COLUMN 列名 /删除表中指定名称的列 ,.n /一个DROP子句中允许删除多项命令方式下删除表DROP TABLE 表名 ,.n / DROP命令中可删除多个表六、实验示例两个示例:一个是书上的学生选课数据库S_T,S_T数据库中有学生表student,课程表course和学生选课表sc。各表的结构如下:学生表studentSnochar(9)Not nullprimary key学号Snamevarchar(20)Not null姓名Ssexchar(
5、2)Not null性别SagesmallintNot null年龄Sdeptvarchar(20)Not null系别课程表courseCnochar(4)Not nullprimary key课程号Cnamevarchar(40)Not null课程名Cpnochar(4)先行课Ccreditsmallint Not null学分学生选课表scSnochar(9)Not nullprimary key学号Cnochar(4)Not nullprimary key课程号Gradesmallint成绩另一个示例是某公司的产品销售数据库company,company数据库中存在人事表employ
6、ee、客户表customer、销售表sales、销售明细表sale_item、产品表product。各表的结构如下:员工人事表employee emp_nochar(5)Not nullprimary key员工编号emp_namevarchar(10)Not null员工姓名sexchar(2)Not null性别deptvarchar(10)Not null所属部门titlevarchar(10)Not null职称date_hireddatetimeNot null雇佣日birthdaydatetimeNull生日salaryintNot null薪水telephonevarchar(2
7、0)Null电话addrvarchar(50)null住址客户表customercust_idchar(5)Not nullprimary key客户号cust_namevarchar(20)Not null客户名称addrvarchar(40)Not null客户住址tel_novarchar(20)Not null客户电话zipchar(6)null邮政编码销售主表sales order_nointNot nullprimary key订单编号cust_idchar(5)Not null客户号sale_idchar(5)Not null业务员编号tot_amtnumeric(9,2)Not
8、 null订单金额order_datedatetimeNot null订货日期销货明细表sale_item order_nointNot nullprimary key订单编号prod_idchar(5)Not nullprimary key产品编号qtyintNot null销售数量unit_pricenumeric(7,2)Not null单价order_datedatetimenull订单日期产品名称表product prod_idchar(5)Not nullprimary key产品编号prod_namevarchar(20)Not null产品名称1创建表及相应的约束create
9、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_phone 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 emplo
10、yeeadd constraint ck_salary check (salary between 1000 and 10000)七、实验内容请分别使用Management Studio及T-SQL语句完成以下内容:针对S_T数据库:依照表结构,创建student表,设置Sno为主键;在Sno列上创建核查约束,要求学号各个位上只能取数字字符;在Ssex列上创建核查约束,要求性别只能取“男”或“女”;在Sage 列上创建核查约束,要求学生的年龄只能在14至38之间。在表student中增加新字段 “班级名称(sclass)“,类型为varchar,长度为10;在表student中删除字段“班级名
11、称(sclass)”;修改表student中字段名为“sname”的字段长度由原来的20改为10;依照表结构,创建course表,设置列Cno为主键;在Cno列上创建核查约束,要求课程号只能取数字字符。依照表结构,创建sc表,设置主键为Sno与Cno的组合;在Grade列上创建核查约束,限定成绩只能在0-100。修改course表,在表中为Cpno列添加一外键约束Fk_Cpno,它参照了course表的主键Cno。修改sc表,在表中为Sno添加一外键约束Fk_Sno,它参照了student表中的主键Sno;为Cno添加外键约束Fk_Cno, 它参照了course表中的主键Cno。删除数据表st
12、udent。针对company数据库:在数据库company中依照表结构创建以上五张表,并设置各表的主键。在销售主表sales中添加字段“发票号码” invoice_no,char(10),NOT NULL。添加外键约束:在销售主表sales的业务员编号字段sale_id上添加外键约束,参照字段为员工表employee中的字段员工编号emp_no,约束名为FK_sale_id。在销售主表sales的客户号字段cust_id上添加外键约束,参照字段为客户表customer中的字段客户号cust_id,约束名为FK_cust_id。在销售明细表sale_item的订单编号字段order_no上添加外键约束,参照字段为销售主表sales中的字段订单编号order_no,约束名为FK_order_no。在销售明细表sale_item的产品编号字段prod_id上添加外键约束,参照字段为产品名称表product中的产品编号字段prod_id,约束名为FK_prod_id。添加核查约束:a) 将员工表employee中的薪水字段salary的值限定在1000至10000间,约束名为CK_salary。b) 将员工表employee中的员工编号字段emp_no设定为以“E”字母开头, 后面跟5位数的编号,约束名为CK_emp_no。将员工表employee中的性别字段设定这
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度绿化工程承包合同
- 大班种子课件教学课件
- 2024山西劳动合同范本
- 2024年度J企业卫星通信技术服务合同
- 2024年店面续租协议:市中心
- 2024互联网销售涂料产品独家代理合同
- 2024年工程进度与安全合同
- 2024年建筑修正协议
- 2024年家用电器维修服务合同
- 2024双方关于影视制作与发行委托合同
- 高考物理系统性复习 (能力提高练) 第五节 实验:探究小车速度随时间变化的规律(附解析)
- 眼科护理中的孕妇与产妇护理
- 业主业主委员会通用课件
- 了解金融市场和金融产品
- 南京理工大学2015年613物理化学(含答案)考研真题
- 初中数学应用题解题思路分享
- 安全生产科技创新与应用
- 人工智能在文化传承与遗产保护中的价值实现
- 2024年汽修厂开业计划书
- ISTA标准-2A、2B、2C系列解读(图文)
- 日间手术应急预案方案
评论
0/150
提交评论