表的创建与管理

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

科生实验报告(二)姓名:学院:专业:计算机科学与技术班级:实验课程名称:数据库原理实验日期:2014年4月3日指导教师及职称:实验成绩:开课时间:2013~2014学年第二学期实验题目表的创建与管理小组合作否姓名班级学号一、实验目的1.了解表的结构特点。2.了解SQLServer的基本数据类型。3.学会在企业管理器中创建表。4.学会使用T-SQL语句创建表。二.实验环境Sqlserver2005三、实验内容与步骤1.快速创建一个名为xmgl的数据库。2.使用DDL语言定义基本表有一个项目管理(xmgl)数据库,现有四张表,分别是部门表(部门号,部门名,部门电话,部门地址);员工表(员工号,姓名,性别,出生年月,所在部门号);项目表(项目编号,项目名称,所在地方)以及员工参与项目(员工号,项目编号,职责)。其中一个员工属于一个部门,一个部门有多个员工;一个员工可同时参加多个项目,一个项目有多个员工一起开发。用SQL语言中的DDL语言建立这四张表,设计并定义表的主码和外码,各字段的数据类型自己设计。3.使用对象资源管理器定义下面的约束①员工号是四位数字串,其中第一位和最后一位是取1-9之间的数字,其他是0-9。②项目编号是以字母J开始的,其它是数字的4位字符串。③约束性别的取值为“男”、“女”,且非空,缺省是男。④约束部门电话的格式:以8892开始的,其它是数字的8位数字串。4.使用DDL语言增加修改部分表及字段①在部门表中增加“部门领导”字段(和员工号同域);在项目表中增加“项目主管”字段(和员工号同域)。②在员工表中增加“技术职称”和“工资”字段,其中“工资”为数字类型。③在项目表中增加“开工日期”和“完工日期”字段,类型为日期型。④增加约束工程起始日期小于计划完成日期。⑤在部门表中增加“部门人数”字段,类型为字符型。⑥修改“部门人数”字段类型为整型。⑦删除项目表中的“项目类型”字段。5.分别向四张表中录入如下数据。部门表:员工表:项目表:员工参与项目表:四、实验过程与分析(1)员工表1.员工号为主码,不能为空2.员工所在部门号,与部门表中的部门号数据类型完全相同,形成外码约束3.员工的性别要求默认为“男”,并且取值只能为“男”或“女”4.代码createtable员工表(员工号varchar(50)primarykey,姓名varchar(50),性别varchar(50)notnulldefault('男'),出生年月datetime,所在部门号varchar(50)foreignkeyreferences部门表(部门号),check(员工号like'[1-9][0-9][0-9][1-9]'),check(性别in('男','女')))(2)员工参与项目表1.员工号和部门号共同形成了主码,并且两者均不能为空2.员工参与项目表中的员工号的取值取决于员工表中的员工号型要完,形成外码约束,员工参与项目表中部门号的取值取决于部门表中的部门号,形成外码约束3.代码createtable员工参与项目表(员工号varchar(50),项目编号varchar(50),职责varchar(50),primarykey(员工号,项目编号),foreignkey(员工号)references员工表(员工号),foreignkey(项目编号)references项目表(项目编号))(3)项目表1.项目编号为主码,不能为空2.项目主管的取值取决于员工表的员工号,形成外码约束3.开工日期要求小于完工日期4.代码createtable项目表(项目编号varchar(50)primarykey,项目名称varchar(50),所在地方varchar(50),check(项目编号like'J[0-9][0-9][0-9]'))(4)部门表1.部门号为主码,不能为空2.部门领导与员工表中的员工号数据类型相同,形成外码约束3.部门电话要求为8892开头,设置为C_K约束4.代码createtable部门表(部门号varchar(50)primarykey,部门名varchar(50),部门电话varchar(50),部门地址varchar(50),check(部门电话like'8892[0-9][0-9][0-9][0-9]'))五、实验总结通过这次试验,让我充分了解了表的结构,在sqlserver中运用两种方法创建表,第一个是用企业管理器创建表,还有使用语句创建表,这个很重要,需要认真学习,写代码,必须好好的学会,这次试验让我学到了许多东西,为以后的实验打好了基础。

1 / 9
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功