欢迎来到天天文库
浏览记录
ID:13562349
大小:1.10 MB
页数:9页
时间:2018-07-23
《实验三sql语言的ddl实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验三SQL语言的DDL实验报告实验任务1.打开数据库SQLServer2008的查询分析器,用CreateTable建表Student,course,sc。数据库的名称为“学生选课”,各个表结构如教材P85页所示。以下要求用T-SQL来实现:创建student表:CREATEtableStudent(SnoCHAR(9)PRIMARYKEY,SnameCHAR(20)UNIQUE,SsexCHAR(2),SageSMALLINT,SdeptCHAR(20));创建course表:CREATETABLECourse(CnoCHAR(4)PRIMARYKEY,CnameCH
2、AR(40),CpnoCHAR(4),CreditSMALLINT,FOREIGNKEY(Cpno)REFERENCESCourse(Cno));创建sc表:CREATETABLESC(SnoCHAR(9),CnoCHAR(4),GradeSMALLINT,PRIMARYKEY(Sno,Cno),FOREIGNKEY(Sno)REFERENCESStudent(Sno),FOREIGNKEY(Cno)REFERENcesCourse(Cno));2.向表中填入教材P82数据。3.向Student表增加“入学时间”列(列名为Scome,日期型)ALTERTABLEStude
3、ntADDScomeDATE;4.将年龄的数据类型改为整型。ALTERTABLEStudentALTERCOLUMNSageINT;5.为Student中Sname添加列级完整性约束,不能为空。为Student中Sno添加列级完整性约束,取值唯一,不能为空。Sname添加列级完整性约束,不能为空ALTERTABLEStudentADDCONSTRAINTc1CHECK(SnameISNOTNULL);图示为插入元组时Sname列内为空时数据输入失败:Sno添加列级完整性约束,取值唯一,不能为空ALTERTABLEStudentADDCONSTRAINTc2UNIQUE(S
4、no)ALTERTABLEStudentADDCONSTRAINTc3CHECK(SnoISNOTNULL);6.删除Student中Sname列级完整性。ALTERTABLEStudentDROPCONSTRAINTc1;7.为SC按学号升序和课程号降序建立唯一索引。CREATEUNIQUEINDEXSCnoONSC(SnoASC,CnoDESC);8.建立Student、Course及SC的主码约束。在建立Student、Course、SC表的主码约束时出现错误,原因是在创建各个表时已经定义了主码约束,因此再次建立时失败。(1)Student表主码约束建立失败(2)C
5、ourse表主码约束建立失败(3)SC表主码约束建立失败9.建立Student与SC、Course与SC之间的外码约束。ALTERTABLESCADDCONSTRAINTC5FOREIGNKEY(Sno)REFERENCESStudent(Sno)ALTERTABLESCADDCONSTRAINTC6FOREIGNKEY(Cno)REFERENCESCourse(Cno);10.实现学生性别只能是“男”或“女”的Check(检查)约束。ALTERTABLEStudentADDCONSTRAINTC7CHECK(SsexIN('男','女'))11.实现学生年龄只能小于等于
6、30大于17的语义约束。ALTERTABLEStudentADDCONSTRAINTC8CHECK(Sage>17ANDSage<=30)12.用CreateIndex对表student的Sname字段建立一个升序索引,索引名Indexs。CREATEUNIQUEINDEXIndexsONStudent(Sname)13.用DropIndex删除索引Indexs。DROPINDEXStudent.Indexs实验报告完毕!
此文档下载收益归作者所有