资源描述
实训3 数据表的创建与设置
———————————————————————————————— 作者:
———————————————————————————————— 日期:
15
个人收集整理 勿做商业用途
实训三 数据表的创建与设置
【实训目的】
能够使用SQL Server 2000企业管理器,按要求创建和修改用户数据表,建立索引,并能够实现数据完整性的约束,完成数据表数据的输入,并将数据导出到excel表格中.
【实训任务】
(1) 在已经创建的名为“StudentScore”学生成绩管理数据库中创建下列数据表:
表3-1 班级信息表(bClass)的逻辑结构
字段
字段名
类型
长度
中文含义
备注
1
Class_Id
Varchar
8
班级代号
主键、
2
Class_Name
Varchar
20
班级名称
非聚集唯一索引
3
Class_Num
Int
班级人数
4
Major_Id
Char
2
专业代号
外键
5
Length
Char
1
学制
6
Depart_Id
Char
2
所属系部
表3-2 专业信息表(bMajor)的逻辑结构
字段
字段名
类型
长度
中文含义
备注
1
Major_Id
Char
2
专业代号
主键、索引
2
Major_Name
Varchar
40
专业名称
3
Depart_Id
Char
2
系部代号
4
Depart_Name
Varchar
40
系部名称
表3-3 学生信息表(bStudent)的逻辑结构
字段
字段名
类型
长度
中文含义
备注
1
Stud_Id
Varchar
10
学生学号
主键、索引
2
Stud_Name
Varchar
8
学生姓名
3
Stud_Sex
Char
2
学生性别
男/女
4
Birth
Datetime
出生日期
5
Member
Char
2
是否团员
是/否
6
Stud_Place
Varchar
20
学生籍贯
7
Class_Id
Varchar
8
所在班级
外键
表3-4 课程信息表(bCourse)的逻辑结构
字段
字段名
类型
长度
中文含义
备注
1
Course_Id
Varchar
8
课程代号
主键、索引
2
Course_Name
Varchar
30
课程名称
3
Course_Type
Varchar
1
课程类型
2—考试;1—考查;0-选修
4
Hours
Int
课时数
检查约束≥0
表3-5 学生成绩表(bScore)的逻辑结构
字段
字段名
类型
长度
小数位
中文含义
备注
1
Stud_Cod
Int
成绩编码
标识列
2
Stud_Id
Varchar
10
学生学号
外键
3
Course_Id
Varchar
8
课程代号
外键
4
Term
Tinyint
学期
检查约束≥0
5
Score
Numeric
1
成绩
检查约束≥0
6
Credit
Numeric
1
学分
检查约束≥0
7
Makeup
Numeric
1
补考成绩
检查约束≥0
(2)拓展实训练习
【实训要求】
完成时间:4课时
上交形式:数据库文件(电子格式),报告内容(结果可打印张贴或书写)
【实训步骤】
3.1创建数据表
操作要求:
1.创建数据表
操作步骤:
(1)在企业管理器中,选择并展开要创建新表的数据库StudentScore。
(2)在展开的列表中右击“表”节点,从弹出的快捷菜单中选择【新建表】命令,打开如图3-1所示的“新建表”对话框。在该对话框中,可以定义列的以下属性:列名、数据类型、长度、精度、小数位数、是否允许为空等。这里班级表bClass的定义如图3-1所示。
(3)单击工具栏上的“保存”按钮,在弹出的保存对话框中输入表名bClass,则该表就被保存到数据库StudentScore中了.
图3—1 新建表对话框
þ 同样步骤,创建专业信息表(bMajor)、学生信息表(bStudent)、课程信息表(bCourse)和学生成绩表(bScore).
2、设置标识列
选定表bScore中要设置标识列的字段“Stud_Cod”,在下面“列”属性标签上,单击“标识”下拉列表,选择“是",设置该字段为“标识列”,如图3-2所示.
图3-2设置标识列
3.为数据表添加约束
任务1:为班级表“Class_Id”字段建立主键约束.
操作步骤:
建立表结构时,在要创建主键约束的“Class_Id”列上右击鼠标,从弹出的快捷菜单中选择【设置主键】命令,如图3—3所示,则该列就被设置为主键,并且在该列的开头会出现象钥匙形状的图标。
图3—3 设置表对话框
注意:设置了主键后,可在“属性”对话框中的“索引/键"选项卡中看到,已生成了相应的索引,并且是聚集索引,如图3—4所示.
图3—4 索引/键对话框 图3-5 设置外键约束对话框
任务2:成绩表(bScore)中的学生学号应与学生信息表(bStudent)中的学生学号相关,为bScore表的创建外键约束。
操作步骤:
(1)打开要创建外键约束的表bScore的设计界面,在任意列上右击鼠标,从弹出的快捷菜单中选择【属性】命令,选择“关系"选项卡,如图3—5所示。
(2)在“关系"选项卡上单击“新建”按钮,在“关系名"文本框中输入外键约束名.如果要修改已经建立的约束,可以从“选定的关系”列表中选择对应的关系名后再修改;如果要删除约束,则单击“删除”按钮.
(3)指定主键表和外键表,并从下方的列表框中选择要进行关联的列名。其它设置采用默认设置即可。
任务3:限制课程信息表(bCourse)中的课时数不能为负数,在课时数列上设置一个检查约束。(逻辑表达式:Hours >=0)
操作步骤:
(1)在要创建检查约束的数据库表的设计界面上,右击任意列,从弹出的快捷菜单中选择【属性】命令,选择进入“CHECK约束”选项卡,如图3-6所示。
(2)在“CHECK约束”选项卡上单击“新建"按钮,然后在“约束表达式”文本框中输入要设置的检查约束的逻辑表达式。如果要修改已经建立的约束,可以从下拉列表中选择要修改的检查约束;如果要删除约束,则单击“删除”按钮。
图3—6 创建检查约束对话框
依据上述添加约束的方法步骤,创建专业信息表(bMajor)、学生信息表(bStudent)、课程信息表(bCourse)和学生成绩表(bScore)中的主键约束、外键约束、检查约束。
4.创建关系图
操作步骤为:
①在企业管理器中,展开要建立外键约束的实例数据库StudentScore,右击“关系图"节点,选择快捷菜单中的【新建数据库关系图】命令,打开如图3-7所示的向导对话框。
②单击“下一步”,用手工方式选择要建立连接的5个数据表,如图3-8所示.然后再单击“下一步”,弹出完成建立数据库关系图向导对话框,如图3-9所示。
图3—7 建数据库关系图的向导对话框 图3-8 选择数据表的对话框
③单击“完成”按钮,在关系图区域中,出现了5个数据表的关联关系,如图3-10所示。
④单击工具栏上的“保存”按钮,打开“另存为”对话框,在其中输入关系图的名称,如图3—11所示,这样就建立了关系图。
图3—9 完成数据库关系图向导对话框 图3-11保存数据库关系图对话框
图3-10数据库关系图
3。2使用企业管理器查看和创建索引
1.查看索引
操作要求:
使用企业管理器,查看班级表中的索引字段的索引类型.
操作步骤:
打开企业管理器,将控制台根目录展开至“数据库→studentScore→表”节点,选择“bClass",并单击鼠标右键,执行快捷菜单中“所有任务→管理索引”命令,打开如图3-12所示对话框。
图3—12 管理索引对话框 图3-13 索引/键设置的对话框
2。创建索引
操作要求:
使用企业管理器,创建班级表中的Class_Num字段为非聚集索引。
(1)在要创建索引的数据库表班级表的设计界面上,右击任意列,从弹出的快捷菜单中选择【属性】命令,再选择进入“索引/键”选项卡,如图3-13所示。
(2)在“索引/键”选项卡单击“新建"按钮,在“索引名”文本框中输入索引名,在列名列表中选择要创建索引的列Class_Num。“升序︱降序”用于指定具体某个索引列的升序或降序排序方向.
(3)选择索引类型。若选择“创建UNIQUE"复选框,则创建一个唯一性索引;若选择“创建为CLUSTERED”复选框,则创建一个聚集索引。如果不选择,则创建一个非聚集索引。
(4)单击“关闭"按钮,即可生成新的索引.
3。3使用企业管理器自动生成的SQL脚本(请分析学习SQL脚本含义)
SQLServer2000可把创建的数据表的SQL语句导出来。
操作步骤:
(1) 在企业管理器中选择并右击要生成SQL语句的数据表,然后在快捷菜单中选择“所有任务”—〉“生成SQL脚本”。
(2) 如图3—14所示,可以在界面上首先选择哪些表需要创建脚本,并且点击“预览"按钮,查看生成SQL脚本信息,如图3—15所示.
图3-14选择需要创建脚本的表
图3—15脚本预览窗口
(3) 然后,在图3—16中选择创建的SQL的格式。
图3-16创建脚本的格式
(4)在“选项”选项卡中,选择是否需要创建数据库的脚本,以及主外键、约束等的SQL脚本生成,如图3—17所示。
图3—17安全性脚本和表脚本
(5)最后单击“确定"按钮生成时对应的脚本文件,保存成。sql文件。
3。4数据的输入与编辑
使用企业管理器,在已建的5个数据表中添加和删除记录数据.
操作步骤:
在企业管理器中,打开指定的数据库并展开“表”节点,在右栏的窗口中右击要操作的数据库表,并从弹出的快捷菜单中选择【打开表】命令,选择“返回所有行”或者“返回首行”显示数据库表中存放的数据。第一次打开表时,是一个空表,可用鼠标激活后输入及编辑数据.
l 根据下图数据向表中添加数据记录.(请注意先输入哪个表中的数据?为什么?)
l 输入数据,请注意表中已设置的数据完整性约束对记录数据的要求。
图3—18 表bClass数据记录 图3—19表bCourse数据记录
图3—20表bScore数据记录 图3-21表bMajor数据记录
图3-22 表bStudent数据记录
3.5数据的导出到Excel表格中
将5个数据表中数据从SQL Server导出到Excel中,操作步骤:
(1)在企业管理器中右击要导出数据的SQL Server服务器,选择快捷菜单中的【所有任务∣导出数据】命令,打开“DTS导入/导出向导”对话框.
(2)单击“下一步”按钮,打开如图3-23所示的“选择数据源”对话框.其中默认的数据源为“用于SQL Server的Microsoft OLE DB提供程序”。由于本例是从SQL Server中导出数据,所以不改变默认的设置.
图3-23 “选择数据源"对话框
(3)单击“下一步”按钮,打开“选择目的"对话框,由于本例是向Excel导出数据,所以从下拉列表框中选择“Micrsoft Excel 97—2000”,并单击“…"选择Excel表格的文件名,如图3—24所示。
图3—24 “选择目的”对话框
(4)单击“下一步”按钮,打开“指定表复制或查询"对话框。其中三个选项的含义与导入数据时类似,这里选择“从源数据库复制表和视图"单选钮,如图3-25所示。
图3—25 “指定表复制或查询"对话框
图3—26 “选择源表和视图”对话框
(5)单击“下一步"按钮,打开如图3—26所示的“选择源表和视图”对话框。
(6)单击“下一步”按钮,打开“保存、调度和复制包”对话框,选择“立即运行”.
(7)单击“下一步”按钮,系统弹出完成窗口,完成数据的导出工作。
【拓展实训】
在上次实训中创建的“进销存”数据库上创建“物资台账”、“物资入库”、“物资出库"三张表,三张表的结构如下所示。
“物资台账”表结构
列名
类型
宽度
备注
物资编码
char
4
主键:“物资编码”
在主键上创建聚集唯一索引
“物资编码”由4位组成,其中第1位使用英文字母,表示类别,后3位使用数字,表示流水号.
物资名称
Varchar
10
计量单位
Char
2
单价
Money
8
期初库存
Numeric
9
“物资入库”表结构
列名
类型
宽度
备注
物资编码
char
4
外键、聚集不唯一索引
入库时间
Datetime
8
入库数量
Numeric
9
“物资出库”表结构
列名
类型
宽度
备注
物资编码
char
4
外键、聚集不唯一索引
出库时间
Datetime
8
出库数量
Numeric
9
“物资台账”记录
物资编码
物资名称
计量单位
单价(元)
期初库存
A001
英雄牌钢笔
只
2.5
50
B001
普通橡皮
块
1.2
100
B002
高级橡皮
块
2.0
30
“物资入库"记录 “物资出库”记录
物资编码
入库时间
入库数量
A001
2003-11-08
10
B001
2003-11—08
20
A001
2003—11—15
15
A001
2003-11-24
16
B002
2003-11—25
10
物资编码
出库时间
出库数量
A001
2003-11—01
10
B001
2003—11—01
20
A001
2003—11—14
10
A001
2003-11—21
20
B002
2003—11-21
30
展开阅读全文