预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共19页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

数据库上机报告 ——数据定义与数据查询 写明实验所采用的实验环境: 硬件环境:普通联网的PC机; 操作系统:Windows2000或者WindowsXP; 数据库管理系统:MSSQLServer2005。 给出实验内容与完成情况: (一)使用命令行方式建立学生课程数据库 (1)用SQL语言建立学生课程数据库,数据库命名:SC_学号后四位及姓名,如SC_3112liyan; CREATEDATABASESC_1224cxj ON (NAME=SC_1224cxj_dat, FILENAME='C:\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\SC_1224cxj_dat.mdf') LOGON (NAME=SC_1224cxj_log, FILENAME='C:\ProgramFiles\MicrosoftSQLServer\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表: CREATETABLEStudent (SnoCHAR(9)PRIMARYKEY, SnameCHAR(40)UNIQUE, SsexCHAR(2), SageSMALLINTCHECK(Sage>16), SdeptCHAR(20) ); 建立Course表: CREATETABLECourse (CnoCHAR(4)PRIMARYKEY, CnameCHAR(40)UNIQUE, CpnoCHAR(4), CreditSMALLINT, CONSTRAINTFK_CFOREIGNKEY(Cpno)REFERENCESCourse(Cno) ); 建立Teacher表: CREATETABLETeacher (TnoCHAR(4)PRIMARYKEY, TnameCHAR(40), DepartmentCHAR(20), EmailCHAR(100), SalaryINT ); 建立SC表: CREATETABLESC (SnoCHAR(9), CnoCHAR(4), GradeSMALLINT, PRIMARYKEY(Sno,Cno), CONSTRAINTFK_SC1FOREIGNKEY(Sno)REFERENCESStudent(Sno), CONSTRAINTFK_SC2FOREIGNKEY(Cno)REFERENCESCourse(Cno) ); (3)修改数据表: 将SC表中Grade的数据类型改为float; ALTERTABLESCALTERCOLUMNGradeFLOAT; 在Student表中增加一个属性Scome记录学生的入学时间,其数据类型为DATETIME; ALTERTABLEStudentADDScomeDATETIME; 删除Student表中新增加Scome属性; ALTERTABLEStudentDROPCOLUMNScome; 删除表Teacher表中的Email属性; ALTERTABLETeacherDROPCOLUMNEmail; 删除Student表中对Sname属性创建的Unique约束。(无法删除未建立名字的约束) 建立约束语句: ALTERTABLEStudentADDCONSTRAINTS_CHECKUNIQUE(Sname); 删除约束语句: ALTERTABLEStudentDROPS_CHECK; *(4)用SQL语言分别在3个数据表中插入数据(具体数据可见教材P.82): INSERT INTOStudent VALUES('200215121','李勇','男',20,'CS'); INSERT INTOStudent VALUES('200215122','刘晨','女',19,'CS'); INSERT INTOStudent VALUES('200215123','王敏','女',18,'MA'); INSERT INTOStudent VALUES('200215125',