数据库实验2 创建数据库表与索引.docx

上传人:b****6 文档编号:5888781 上传时间:2023-01-01 格式:DOCX 页数:14 大小:809.63KB
下载 相关 举报
数据库实验2 创建数据库表与索引.docx_第1页
第1页 / 共14页
数据库实验2 创建数据库表与索引.docx_第2页
第2页 / 共14页
数据库实验2 创建数据库表与索引.docx_第3页
第3页 / 共14页
数据库实验2 创建数据库表与索引.docx_第4页
第4页 / 共14页
数据库实验2 创建数据库表与索引.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

数据库实验2 创建数据库表与索引.docx

《数据库实验2 创建数据库表与索引.docx》由会员分享,可在线阅读,更多相关《数据库实验2 创建数据库表与索引.docx(14页珍藏版)》请在冰豆网上搜索。

数据库实验2 创建数据库表与索引.docx

数据库实验2创建数据库表与索引

实验2:

创建数据库表与索引----表的创建与管理

1.实验目的与要求:

1.1在已建立的数据库中创建表:

掌握表的建立方法,运用企业管理器和Transact-SQL语句两种方法建立“课程信息表”、“教学任务表”、“教师档案表”、“学生档案表”、“学生选课表”、“学生成绩表”。

1.2了解表与表之间的逻辑依赖关系:

学会在企业管理器中,创建表之间的关联关系。

通过外键的拖曳建立表的基本依赖关系,从而直白地表达整个数据库的表间联系,但是,注意:

建立过程中,主键和外键对应的源数据表,并实践数据库管理系统提供的数据完整性功能,加深对数据完成的理解,进行数据完整性描述。

1.3修改表结构

掌握表结构的修改方法,修改数据类型,为表增加新字段,增加约束条件。

1.4建立索引

掌握索引的建立方法,学会使用Transact-SQL命令创建索引和使用SQL企业管理器创建索引。

2.实验环境与实验器材:

计算机,网络环境,投影设备。

实验相关软件:

Windowxp、SQLServer2000。

2*.实验预备知识

2.1.1关系模型的完整性约束

2.1.2索引

2.1.3表的创建与修改

3.实验内容与步骤

使用企业管理器和Transact-SQL语句创建“课程信息表”、“教学任务表”、“教师档案表”、“学生档案表”、“学生选课表”、“学生成绩表”6张表,各表的逻辑结构如P36表3.1、表3.2、表3.3、表3.4、表3.5、表3.6。

且各表之间的逻辑依赖关系如图3.1。

并对关系表进行管理。

具体内容如下。

3.1在“教学管理”数据库中使用Transact-SQL命令创建表

使用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)课程信息表:

编程代码:

createtable课程信息表

(课程IDchar(6)primarykey

check(课程IDlike('[JZXR][BX][0-9][0-9][0-9][0-9]')),

课程名称varchar(40),

课程类别char(8)check(课程类别IN('基础必修','专业必修','限选','任选')),

学分realcheck(0.5<=学分and学分<=5.0),

学时intcheck(学时%8=0))

实验结果:

实验情况调试分析:

在编写信息课程表代码的过程中,我把“R”错写成“B”,如截图所示,然后在企业管理器中修改回来。

3)教学任务表:

编程代码:

createtable教学任务表

(课程IDchar(6)check(课程IDlike('[JZXB][BX][0-9][0-9][0-9][0-9]')),

任课教师IDchar(8)foreignkeyreferences教师档案表

check(任课教师IDlike('[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9])')),

学期intcheck(学期IN('1','2')),

年度char(10)check(1990<=年度and年度<=2010),

primarykey(课程ID,年度,学期))

实验结果:

3.2在“教学管理”数据库中使用企业管理器创建表

使用SQL企业管理器创建“学生成绩表”、“教师档案表”、“学生选课表”。

1)学生成绩表:

2)教师档案表:

3)学生选课表:

3.3修改表的结构

3.3.1修改数据类型

1)将“学生档案表”中的“姓名”字段的数据类型改为varchar(8)。

编程代码:

altertable学生档案表

altercolumn姓名varchar(8)

实验结果:

2)将“课程信息表”中的“课程名称”字段的数据类型改为varchar(50)。

编程代码:

altertable课程信息表

altercolumn课程名称varchar(50)

实验结果:

3.3.2增加一个新字段

1)为“学生成绩表”增加一个新字段“总成绩”,类型为real,默认是空值。

编程代码:

altertable学生成绩表

add总成绩realdefaultnull

实验结果:

2)为“教学任务表”增加一个新字段“教师姓名”,类型为varchar(8),默认是空值。

编程代码:

altertable教学任务表

add教师姓名varchar(8)

实验结果:

3.3.3增加约束条件

1)为“学生成绩表”增加一个约束,“平时成绩”字段的取值为大于等于0小于等于100的正数。

编程代码:

altertable学生成绩表

addconstraintshuliang1check(平时成绩>=0and平时成绩<=100)

实验结果:

2)为“教学任务表”中的“年度”添加约束条件,使得年度大于2000年。

编程代码:

altertable教学任务表

addconstraint年度1check(年度>2000)

实验结果:

3.4使用Transact-SQL命令创建索引

3.4.1在“学生档案表”的“姓名”字段上建立普通升序索引;

3.4.2在“学生档案表”的“学号”字段上建立唯一索引;

3.4.3在“学生档案表”的“学号”(升序)、“姓名”(升序)、和“籍贯”(降序)三个字段上建立普通索引;

3.4.4在“学生成绩表”的“学号”字段上建立聚集索引;

编程代码:

createindex姓名索引on学生档案表(姓名)

createuniqueindex学号索引on学生档案表(学号)

createindex多列索引on学生档案表(学号,姓名,籍贯desc)

createclusteredindex学号索引on学生成绩表(学号)

实验结果:

3.4.5在“教学任务表”的“任课教师ID”字段上创建名为“任课教师ID索引”的唯一索引;在“教师档案表”中的“教师ID”(降序)、“姓名”(升序)、“职称”(升序)三个字段上建立一个普通索引。

编程代码:

createuniqueindex任课教师ID索引on教学任务表(任课教师ID)

createindex教师ID索引on教师档案表(教师IDdesc)

createindex姓名索引on教师档案表(姓名)

createindex职称索引on教师档案表(职称)

实验结果:

3.5使用SQL企业管理器创建索引

3.5.1使用SQL企业管理器在“学生档案表”中的“籍贯”字段上创建普通升序索引。

3.5.2使用SQL企业管理器在“课程信息表”上创建“课程ID”唯一索引。

3.6创建数据库表之间的关系图

创建上述6张表之间的关系图:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1