数据库实验2表的创建与管理.docx
《数据库实验2表的创建与管理.docx》由会员分享,可在线阅读,更多相关《数据库实验2表的创建与管理.docx(21页珍藏版)》请在冰豆网上搜索。
![数据库实验2表的创建与管理.docx](https://file1.bdocx.com/fileroot1/2023-2/1/c0826b00-1bde-46e6-87ed-06d87f82eb9a/c0826b00-1bde-46e6-87ed-06d87f82eb9a1.gif)
数据库实验2表的创建与管理
实验2:
创建数据库表与索引
----表的创建与管理
1.实验目的:
掌握表和索引的建立方法及表结构的修改方法,了解表关系建立的条件和作用,并实践数据库管理系统提供的数据完整性功能,加深对数据完整性的理解。
要求建立表、修改表结构、建立索引、进行数据完整性描述。
2.实验要求:
⑴在已经建立的数据库中创建表
运用MicrosoftSQLServer2000企业管理器和Transact-SQL语句两种方法建立“课程信息表”、“教学任务表”、“教师档案表”、“学生档案表”、“学生选课表”、“学生成绩表”。
⑵了解表与表之间的逻辑依赖关系
学会在MicrosoftSQLServer2000企业管理器中,创建表之间的关联关系,通过外键的拖曳建立表的基本依赖关系,从而直白的表达整个数据库的表间联系,但是,注意:
过程中,主键与外键对应的源数据表。
⑶修改表结构
将学生档案表“姓名”字段的数据类型修改为varchar(8)。
为学生成绩表增减一个新的字段——“总成绩”,类型为real,默认是空值。
学生成绩表“平时成绩”字段的取值为小于100的正数。
⑷建立索引
运用Transact—SQL语句建立以下索引:
◆在学生档案表的“姓名”字段上建立普通升序索引;
◆在学生档案表的“学号”字段上建立唯一索引;
◆在学生档案表的“学号”字段上建立聚集索引;
◆在学生档案表的“学号”(升序)、“姓名”(升序)和“籍贯”(升序)三个字段上建立一个普通索引;
◆运用SQL企业管理器在学生档案表中的“籍贯”字段上创建普通升序索引。
3.实验环境与实验器材:
计算机,网络环境,投影设备。
实验相关软件:
Windowxp、SQLServer2000。
4.实验内容与步骤
使用企业管理器和Transact-SQL语句创建“课程信息表”、“教学任务表”、“教师档案表”、“学生档案表”、“学生选课表”、“学生成绩表”6张表,6张表的具体设计内容:
“课程信息表”包括课程名称、课程类别、学分和学时等;“教师档案表”和“学生档案表”记录了教师和学生的基本情况;“教学任务表”包括课程ID、任课教师ID、学期和年度;“学生选课表”给出了学生与课程之间的关系;“学生成绩表”则给出了学生成绩的计算方法。
4.1在“教学管理”数据库中使用Transact-SQL命令创建表
使用Transact-SQL命令创建“学生档案表”,包含字段“学号”、“姓名”、“性别”、“出生日期”、“籍贯”、“专业”、“班级”。
第1步:
从“开始”菜单中打开“查询分析器”,连接进入“查询”窗口。
第2步:
在“查询”窗口中,创建指定数据文件和事务日志文件的“教学管理”数据库,要注意这两个文件路径所需的文件夹应先创建好,不然会有错误提示。
⑴在“教学管理”数据库中使用Transact-SQL命令创建表
①创建“学生档案表”
第1步:
在“查询分析器”窗口的上部,选择“教学管理”数据库。
并在查询框中输入建立“学生档案表”的命令:
createtable学生档案
(学号char(8)primarykey
Check(学号like('[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]')),
姓名varchar(8)notnull,
性别char(8),
出生日期datetimecheck(出生日期>='1970'),
籍贯char(8),
专业char(8),
班级char(8))
第2步:
执行该命令,出现如下窗口:
第3步:
刷新“SQL查询分析器”界面左边的“对象浏览器”中的“教学管理”数据库,这时在“教学管理”数据库的“用户表”中可以看到新建的“学生档案表”
②创建“教师档案表”
第1步:
输入建立“教师档案表”的命令,如下:
createtable教师档案表
(任课教师IDchar(8)primarykey
check(任课教师IDlike('[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]')),
姓名varchar(8)notnull,
性别char(8),
check(性别='M'or性别='F'),
职称varchar(8),
单位varchar(20))
第2步:
执行,结果如下:
第3步:
刷新,查看表:
③创建“教学任务表”
第1步:
输入建立“教学任务表”的命令,执行
第2步:
刷新,查看表
④创建“课程信息表”
第1步:
输入建立“课程信息表”的命令,执行:
第2步:
刷新,查看表
⑤创建“学生选课表”
第1步:
输入建立“学生选课表”的命令,执行
第2步:
刷新,查看表
⑥创建“学生成绩表”
第1步:
输入建立“学生成绩表”的命令,执行
第2步:
刷新,查看表
3.2在“教学管理”数据库中使用企业管理器创建表
使用SQL企业管理器创建“教师档案表”,如图示:
3.3修改表的结构
3.3.1修改数据类型
1)将“学生档案表”中的“姓名”字段的数据类型改为varchar(8),则命令如下:
altertable学生档案
altercolumn姓名varchar(8)
2)将“课程信息表”中的“课程名称”字段的数据类型改为varchar(50),则命令如下:
altertable课程信息
altercolumn课程名称varchar(50)
第1步:
打开“SQL查询分析器”并连接,输入对表结构修改的命令,如图:
第2步:
执行,查看结果:
3.3.2增加一个新字段
1)为“学生成绩表”增加一个新字段“总成绩”,类型为real,默认是空值,命令如下:
altertable学生成绩
add总成绩realdefaultnull
2)为“教学任务表”增加一个新字段“教师姓名”,类型为varchar(8),默认是空值命令如下:
altertable教学任务
add教师姓名varchar(8)defaultnull
第1步:
打开“SQL查询分析器”并连接,输入对表结构修改的命令,如图:
第2步:
执行,查看结果:
3.3.3增加约束条件
1)为“学生成绩表”增加一个约束,“平时成绩”字段的取值为大于等于0小于等于100的正数命令如下:
altertable学生成绩
addconstraintshuliang1check(平时成绩>=0and平时成绩<=100)
2)为“教学任务表”中的“年度”添加约束条件,使得年度大于2000年,命令如下:
altertable教学任务
addconstraintshuliang2check(年度>2000)
第1步:
打开“SQL查询分析器”并连接,输入对表结构修改的命令,如图:
第2步:
执行,查看结果:
3.4使用Transact-SQL命令创建索引
3.4.1在“学生档案表”的“姓名”字段上建立普通升序索引;
3.4.2在“学生档案表”的“学号”字段上建立唯一索引;
3.4.3在“学生档案表”的“学号”(升序)、“姓名”(升序)、和“籍贯”(降序)三个字段上建立普通索引;
3.4.4在“学生成绩表”的“学号”字段上建立聚集索引;
3.4.5在“教学任务表”的“任课教师ID”字段上创建名为“任课教师ID索引”的唯一索引;在“教师档案表”中的“教师ID”(降序)、“姓名”(升序)、“职称”(升序)三个字段上建立一个普通索引。
第1步:
打开“SQL查询分析器”并连接,输入创建索引的命令,代码如下:
createindex姓名索引on学生档案(姓名)
createuniqueindex学号索引on学生档案(学号)
createindex多列索引on学生档案(学号,姓名,籍贯desc)
createclusteredindex学号索引on学生成绩(学号)
createuniqueindex任课教师ID索引on教学任务(任课教师ID)
createindex多列索引on教师档案(学号教师IDdesc,姓名,职称)
第2步:
执行,查看结果:
第3步:
索引创建成功,在对象浏览器中的“教学管理”数据库下,可以看到刚创建的“姓名索引”“学号索引”“多列索引”,如图:
3.5使用SQL企业管理器创建索引
3.5.1使用SQL企业管理器在“学生档案表”中的“籍贯”字段上创建普通升序索引。
第1步:
打开“企业管理器”,在“控制台根目录”中,,点开“教学管理”数据库中的表,如图:
第2步:
在“学生档案”上单击右键,选择“所有任务”→“管理索引”,弹出如下窗口:
第3步:
单击“新建”,出现“新建索引”对话框,输入索引名“籍贯索引”,选择索引列“籍贯”,如图:
第4步:
单击“确定”,返回“管理索引”,如图:
3.5.2使用SQL企业管理器在“课程信息表”上创建“课程ID”唯一索引。
步骤如下:
打开“企业管理器”,在“控制台根目录”中,,点开“教学管理”数据库中的表,使用SQL企业管理器在“课程信息表”上创建“课程ID”唯一索引。
步骤如下:
打开“企业管理器”,在“控制台根目录”中,,点开“教学管理”数据库中的表,在“课程信息”上单击右键,选择“所有任务”→“管理索引”,弹出如下窗口:
单击“新建”,出现“新建索引”对话框,输入索引名“课程ID索引”,选择索引列“课程ID”,如图:
单击“确定”,返回“管理索引”,如图:
即可。
3.6创建数据库表之间的关系图
第1步:
在企业管理器的“控制台根目录”中,单击左端“+”号层层展开,直到在屏幕上看到数据库下的各个数据库,点开“教学管理”数据库,看到该数据库下的子项。
如图:
第2步:
在“关系图”子项上,单击右键,选择“新建数据库关系图”,如图:
第3步:
单击“下一步”,之后添加6张表到右边的文本框中:
第4步:
单击“下一步”,单击“完成”
5.思考与总结
这次实验主要使用Transact-SQL语句在查询分析器中实现表和索引的创建,还有表的修改,通过实验对相应的SQL语句有了更深的了解和学习。
在命令语句的输入中,对每一个语句都应该仔细输入,做到没有遗漏;在遇到错误提示时,应学会通过尝试修改语句来寻找错误之处,思考错误的原因,结合课本所学知识进行对比,这样才能对SQL语句有更深的认识。