数据库用户表的创建文档格式.docx
《数据库用户表的创建文档格式.docx》由会员分享,可在线阅读,更多相关《数据库用户表的创建文档格式.docx(17页珍藏版)》请在冰豆网上搜索。
3、掌握约束概念及实施的方法。
4、掌握添加和删除列的方法。
二、实验内容及要求
1、使用对象资源管理器创建表(完成本书第一章五个表的创建)
2、使用T-SQL语句创建表
有一个项目管理(xmgl)数据库,现有四张表,分别是:
a、部门表(部门号,部门名,部门电话,部门地址,部门人数);
b、员工表(员工号,姓名,性别,出生年月,技术职称,工资,所在部门号);
b、项目表(项目编号,项目名称,所在地方,项目类型);
c、员工参与项目(员工号,项目编号,职责);
其中有下画线的字段为关键字,斜体的字段是外关键字。
除工资为数值类型、出生年月为日期类型外,其余字段均为字符类型。
3、从sysobjects、sysindexes和sysrefrences、syscolumns表中查看关于上述创建的表的信息
4、使用对象资源管理器定义下面的约束。
(1)员工号是4位数字串,其中第1位和最后1位取1-9之间的数字,其他取0-9之间的数字。
(2)项目编号是以字母J开始的其他是数字的4位字符串。
(3)约束性别的取值为“男”、“女”,且非空,默认是“男”。
(4)约束电话号码的格式:
以8892开始,第5位取234中的一个,其他是任意数字的8位数字串。
5、使用SQL语言增加修改部分表及字段。
(1)在部门表中增加“部门领导”字段(注意和员工号同域);
在项目表中增加“项目主管”字段(注意和员工号同域);
并考虑相应的外键约束。
(2)、在员工表中增加“技术职称”和“工资字段”,其中“工资”字段为数值类型。
(3)在项目表中增加“开工日期”和“完工日期字段”,为日期类型。
(4)增加约束:
工程开工日期小于计划完工日期。
(5)修改“部门人数”字段类型为整型。
(6)删除项目表中的“项目类型”字段。
三、实验步骤及结果
(一)使用对象资源管理器创建
1、使用对象资源管理器创建
(1)在树状目录中找到要建表的数据库。
如图
(2)在该数据库上单击鼠标右键,在弹出的快捷菜单中选择“新建”-“表”命令,如图1所示。
出现创建数据表结构的表设计窗口,如图2所示。
图一图二
(3)表设计器窗口中输入列名和相应的数值,创建第一个表——学生表,如图:
(4)设置完后,单击工具栏上的“保存”按钮。
在出现的选择名称对话框中输入表名“学生表”。
并单击“确定”按钮退出。
2、设置学生表完整性的约束
(1)展开对象资源管理器的数据库“xmgl”,单击“表”结点,选择学生表,单击鼠标右键,在快捷菜单上单击“修改”,出现如图所示的创建表结构窗口。
(2)设置主键约束(PRIMARYKEY),将光标移到需要设置主键的“学号”字段,单击鼠标右键,出现下拉菜单,如图。
然后选择“设置主键”,“学号”列名左侧出现“钥匙”图标。
图三图四
注:
a、如果要设置多属性作为主键,可以按住Ctrl键,用鼠标左键依次单击要选定的列,选定多列后,单击右键出现下拉菜单,如图四。
然后选择“设置主键”。
b、如果要取消设置的主键,应选定主键字段,单击鼠标右键出现下拉菜单,然后选择“移除主键”。
(3)在图三所示的表设计器上右击,出现下拉菜单,如图四。
选择“索引/键”选项卡,如下图。
系统设置“学生表.学号”属性为主键,因此自动在表中建立一个根据学号值的大小升序排列的索引,主键索引名为“PK_学生表”。
(5)设置检查约束(CHECK),学生表定义了三个CHECK约束,第一个约束是学号,第二个约束是身份证号,第三个是移动电话。
a、单击图四所示的表示设计器下拉快捷菜单中的“CHECK约束”,出现如图所示的“CHECK约束”属性对话框,在其中新建约束。
b、建立学号的约束:
单击“添加”按钮,系统自动给定一个约束名,可在“标示-(名称)”处改名为“CK_学生表_学号”,然后在“常规-表达式”行单击
,出现约束表达式的文本框,输入“学号LIKE‘S[0-9][0-9][0-9][0-9][0-9][0-9]’”。
如图:
c、建立身份证约束:
单击“添加”按钮,系统自动给定一个约束名,同上,改名为“CK_学生表_身份证号”,然后在约束表达式文本框中输入“身份证号LIKE‘[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][0-9][0-9][0-9][0-9][0-9]’”。
d、建立移动电话约束:
同上,在约束文本框中输入“移动电话LIKE'
[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'
”。
3、在表中输入数值
(1)展开对象资源管理器的数据库“xmgl”,单击“表”结点,选定学生表,单击鼠标右键,在快捷菜单中选择“打开表”。
出现如图所示:
再在相应位置对应学生表输入,如图
这就建好学生表了。
5、其余的四张表:
课程表、教师表、开课表、选课表的创建过程同学生表。
并设置相应的约束。
(1)课程表
(2)教师表
(3)开课表
(4)选课表
6、设置表的外键约束。
“xmgl”数据库中有5个表。
其中,教师表、课程表和开课表有联系,开课表中的“课号”和“工号”是关于课程表和教师表的外键。
同理,学生表、开课表和选课表有联系,选课表中的“学号”和“开课号”是关于学生表和开课表的外键。
设置步骤如下:
(1)明确开课表和教师表关于工号的参照关系。
开课表中的属性工号参照教师表中的属性工号的值,则开课表为外键表,开课表.工号为外键,教师表为主键表,教师表.工号是主键。
(2)单击图四所示表设计器下拉快捷菜单中的“关系”,出现“外键关系”对话框,单击“添加”按钮,系统自动给出一个关系名,然后在“常规-表和列规范”行单击
,出现如图所示的教师表“关系”选项卡。
在“关系名”处修改关系名称,选择主键表为教师表,外键表为开课表,选择两表的属性为工号。
打开开课表的属性对话框,单击“关系”选项卡,就可以看到已建立好的开课表和教师表的外键约束。
(3)同理,选择课表,建立课程表和开课表的外键约束关系;
选择学生表,建立学生表和选课表的外键约束关系;
选择开课表,建立开课表和选课表的外键约束关系。
(二)使用T-SQL语句创建表
1、创建部门表
点击“新建查询”,在出来的编辑框里输入SQL命令。
usexmgl
go
createtable部门表
(
部门号char(7)notnull,
部门名char(10)notnull,
部门电话char(8),
部门地址char(10)notnull,
部门人数char
(2)notnull,
constraintpk_部门表_部门号primarykey(部门号),
constraintck_部门表_部门号check(部门号like'
S[0-9][0-9][0-9][0-9][0-9][0-9]'
)
这样就创建好了第一张表——部门表:
2、创建员工表、项目表、员工参与项目同部门表的创建,代码分别如下:
(1)员工表
createtable员工表
员工号char(6)notnull,
姓名char(8)notnull,
性别char
(2)notnull,
出生年月datetimenotnull,
技术职称char(10)notnull,
工资int,
所在部门char(7)notnull,
constraintpk_员工表_员工号primarykey(员工号),
constraintck_员工表_员工号check(员工号like'
[0-9][0-9][0-9][0-9][0-9][0-9]'
),
constraintfk_员工表_所在部门foreignkey(所在部门)references部门表(部门号)
onupdatecascadeondeletecascade
(2)项目表
createtable项目表
项目编号char(6)notnull,
项目名称char(8)notnull,
所在地方char(10)notnull,
项目类型char
(2)notnull,
constraintpk__项目表_项目编号primarykey(项目编号),
constraintck_项目表_项目编号check(项目编号like'
(3)员工参与项目表
createtable员工参与项目
职责char(10)notnull,
constraintpk_员工参与项目_员工号primarykey(员工号),
constraintck_员工参与项目_员工号check(员工号like'
constraintfk_员工参与项目_员工号foreignkey(员工号)references员工表(员工号)
onupdatecascadeondeletecascade,
constraintfk_员工参与项目_项目编号foreignkey(项目编号)references项目表(项目编号)
这样四张表就建好了:
(三)使用对象资源管理器定义用SQL创建的表的约束
1、如图,
图五.单击“修改”命令,将弹出表设计器,把光标移到员工号处,单击右键,出现如图四所示的下拉菜单。
再单击“CHECK约束”,则出现一个对话框,再在“常规-表达式”中单击
,约束表达式文本框,输入“员工号LIKE’[1-9][0-9][0-9][1-9]’”.
单击确定即可。
2、如图五,同上。
在文本框中输入“项目编号LIKE‘J[0-9][0-9][0-9][0-9]’”.
3、如图五,同上,在文本框中输入“性别LIKE’男and女’”。
并让
空着,再在列属性中输入“男”:
。
4、如图五,同上,在文本框中输入“部门电话LIKE’8892[2-4][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]’”.
(四)使用SQL语言增加修改用SQL创建的部分表及字段
1、
(1)代码为:
altertable部门表
add部门领导char(8)
则在部门表中增加了“部门领导”字段:
(2)代码为:
usexmgl
altertable项目表
add项目主管char(8)
则在项目表中增加了“项目主管”字段:
2、代码为:
altertable员工表
add技术职称char(8),
工资int
则在员工表中增加了“技术职称”和“工资”字段:
3、代码为:
add开工日期datetime,
完工日期datetime
则在项目表中增加了“开工日期”和“完工日期”字段:
5、代码为:
altercolumn部门人数int
6、代码为:
altertable项目表dropcolumn项目类型
四、实验小结
通过本实验,学会了用对象资源管理器和SQL语句创建表和修改表中的一些属性。
同时还知道了有关表的约束和不同的数有不同的数值类型。
在创建表的过程中学会了使用主键约束和外键约束。
需注意的是外键约束需考虑一些特定的条件,不然在设置外键约束的时候就容易出错。
不仅如此,还要熟悉并掌握SQL语句的规则,理解其中代码所表示的意思,做到在理解的基础上实现各代码的相应操作。
五、教师评价
年月日
注:
每学期至少有一次设计性实验。
每学期结束请任课老师按时按量统一交到教学秘书处。