发布时间 : 星期六 文章实验二 数据定义更新完毕开始阅读4baa3740d5bbfd0a795673f5
实验二 数据定义
一、实验目的
1、掌握SQL数据定义功能:数据库定义、表的定义、索引定义。 2、掌握利用企业管理器和SQL语句定义表、索引的方法。
二、实验预习
1、SQL中基本表定义语句格式:
2、SQL中修改基本表语句格式:
三、实验内容和要求
1、在企业管理器中,利用菜单操作的方式在各自的数据库中建立如下四个基本表: (1)供应商表S: 列名 SNO SNAME STATUS CITY 说明 供应商号 供应商名 供应商状态 所在城市 数据类型 CHAR(6) VARCHAR(20) VARCHAR(50) VARCHAR(50) 约束 PRIMARY KEY NOT NULL (2)零件表P: 列名 PNO PNAME COLOR WEIGHT 说明 零件号 零件名 颜色 重量 数据类型 CHAR(6) VARCHAR(20) CHAR(2) NUMERIC(9,2) 约束 PRIMARY KEY NOT NULL CHECK(WEIGHT>0 AND WEIGHT<=100) (3)工程项目表J:
列名 JNO JNAME CITY 说明 项目号 项目名 城市 数据类型 CHAR(6) VARCHAR(20) VARCHAR(50) 约束 PRIMARY KEY NOT NULL (4)供应情况表SPJ: 列名 SNO PNO JNO QTY 说明 供应商号 零件号 项目号 供应数量 数据类型 CHAR(6) CHAR(6) CHAR(6) SMALLINT 约束 NOT NULL NOT NULL NOT NULL DEFAULT 100
2、用CREATE语句建立如下三个表,并写出相应的语句。 (1)学生表Student: 列名 SNO SNAME SSEX SAGE SDEPT 说明 学号 姓名 性别 年龄 所在系 数据类型 CHAR(7) CHAR(10) CHAR(2) SMALLINT VARCHAR(20) 约束 主码 NOT NULL 取“男”或“女” 取值15-45 默认“计算机系”
语句:
(2)课程表Course: 列名 CNO CNAME CCREDIT SEMSTER 说明 课程号 课程名 学分 学期 数据类型 CHAR(10) VARCHAR(20) SMALLINT SMALLINT 约束 主码 NOT NULL 大于0 大于0 PERIOD 学时 SMALLINT 大于0 语句:
(3)选课表Sc: 列名 SNO CNO GRADE 说明 学号 课程号 成绩 数据类型 CHAR(7) CHAR(10) SMALLINT 约束 主码,引用Student的外码 主码,引用Course的外码 大于0
语句:
3、利用SQL语句对表结构进行修改。
(1)为零件表P增加一个规格(GUIGE)列,数据类型为字符,长度50;
(2)修改课程表Course的CNAME属性列的类型为VARCHAR(30);
(3)为供应情况表SPJ添加参照完整性约束; SPJ的SNO列参照S表SNO列
SPJ的PNO列参照P表PNO列
SPJ的JNO列参照J表JNO列
(4)删除零件表P的规格(GUIGE)列
4、利用企业管理器向表中添加数据 (1)供应商表S: SNO S1 S2 SNAME 精益 盛锡 STATUS 20 10 CITY 天津 北京 继续往表中增加一条记录:四个字段的数据分别是S1,东方红,30,北京,会出现什么情况?为什么?
(2)零件表P: PNO P1 P2 P3 PNAME 螺母 螺栓 螺丝刀 COLOR 红 绿 蓝 WEIGHT 12 17 105.5
是否能够正常输入三条数据?如果否,问题出在哪里,为什么?
(3)工程项目表J: JNO J1 J2 J3 JNAME 一汽 半导体厂 CITY 北京 南京 常州 第三条记录是否能够正常输入,若否,会出现什么问题,为什么?
(4)供应情况表SPJ: SN0 S1 S1 PNO P1 P1 JNO J1 J3 QTY 200 S2 P2 J4
输入过程中是否会遇到问题,若有,出在哪,为什么?
四、实验小结
五、评阅成绩
实验预习20%
实验过程20% 实验结果30% 实验报告30% 总成绩