文档详情

SQL数据定义与数据查询.doc

发布:2017-11-29约1.35万字共19页下载文档
文本预览下载声明
数据库上机报告 ——数据定义与数据查询 写明实验所采用的实验环境给出实验内容与完成情况数据库(1) 用SQL语言建立学生课程数据库,数据库命名:SC_学号后四位及姓名,如S3112liyan;CREATE DATABASE SC_1224cxj ON (NAME = SC_1224cxj_dat, FILENAME=C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\ SC_1224cxj_dat.mdf) LOG ON (NAME= SC_1224cxj_log, FILENAME=C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\ SC_1224_log.ldf); (2) 用SQL语言在学生课程数据库中建立3个表,要求进行完整性定义: 学生关系Student(Sno,Sname,Ssex,Sage,Sdept) 其中Sno不能为空,值是唯一的,并且Sname取值也唯一,Sage自定义约束“大于16” 课程关系Course(Cno,Cname,Cpno,Ccredit) 其中Cno不能为空,值是唯一的,并且Cname取值也唯一 教师关系Teacher(Tno,Tname,Department,Email,Salary) 其中Tno不能为空,值是唯一的 选修关系SC(Sno,Cno,Grade) 其中Sno和 Cno不能为空,(Sno, Cno)为主码,Grade的数据类型为int 建立Student表: CREATE TABLE Student (Sno CHAR(9) PRIMARY KEY, Sname CHAR(40) UNIQUE, Ssex CHAR(2), Sage SMALLINT CHECK(Sage16), Sdept CHAR(20) ); 建立Course表: CREATE TABLE Course (Cno CHAR(4) PRIMARY KEY, Cname CHAR(40) UNIQUE, Cpno CHAR(4), Credit SMALLINT, CONSTRAINT FK_C FOREIGN KEY (Cpno) REFERENCES Course(Cno) ); 建立Teacher表: CREATE TABLE Teacher (Tno CHAR(4) PRIMARY KEY, Tname CHAR(40), Department CHAR(20), Email CHAR(100), Salary INT ); 建立SC表: CREATE TABLE SC (Sno CHAR(9), Cno CHAR(4), Grade SMALLINT, PRIMARY KEY(Sno,Cno), CONSTRAINT FK_SC1 FOREIGN KEY(Sno) REFERENCES Student(Sno), CONSTRAINT FK_SC2 FOREIGN KEY(Cno) REFERENCES Course(Cno) ); (3) 修改数据表: 将SC表中Grade的数据类型改为float; ALTER TABLE SC ALTER COLUMN Grade FLOAT; 在Student表中增加一个属性Scome记录学生的入学时间,其数据类型为DATETIME; ALTER TABLE Student ADD Scome DATETIME; 删除Student表中新增加Scome属性; ALTER TABLE Student DROP COLUMN Scome; 删除表Teacher表中的Email属性; ALTER TABLE Teacher DROP COLUMN Email; 删除Student表中对Sname属性创建的Unique约束。(无法删除未建立名字的约束) 建立约束语句: ALTER TABLE Student ADD CONSTRAINT S_CHECK UNIQUE(Sname); 删除约束语句: ALTER TABLE Student DROP S_CHECK; *(4) 用SQL语言分别在3个数据表中插入数据(具体数据可见教材P.82): INSERT INTO Student VALUES(200215121,李勇,男,20,CS); INSERT INTO Student VALUES(200215122,刘晨,女,19,CS); INSER
显示全部
相似文档