资源描述:
《数据库系统原理 实验2:交互式sql语句的使用》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验二:交互式SQL语句的使用1、实验目的(1)掌握数据库对象的操作过程,包括创建、修改、删除(2)熟悉表的各种操作,包括插入、修改、删除、查询(3)熟练掌握常用SQL语句的基本语法2、实验平台使用SQLServer提供的MicrosoftSQLServerManagementStudio工具,交互式使用SQL语句。3实验内容及要求选择如下一个应用背景之一:学生选课系统习题3、4、和5中使用的数据库其它你熟悉的应用(1)建立一个数据库和相关的表、索引、视图等数据库对象,练习对表、索引和视图的各种操作。(2)要求认真进行实验,记录各实验用例及执行
2、结果。(3)深入了解各个操作的功能。实验要求包括如下方面的内容:3.1数据定义1.基本表的创建、修改及删除2.索引的创建3.视图的创建3.2数据操作完成各类更新操作包括:1.插入数据2.修改数据3.删除数据3.3数据查询操作完成各类查询操作1.单表查询2.分组统计3.连接查询4.嵌套查询5.集合查询3.4数据操作1.创建视图2.视图查询参考示例:建立一个学生选课数据库,练习对表、视图和索引等数据库对象的各种操作。一、数据定义创建学生选课数据库ST,包括三个基本表,其中Student表保存学生基本信息,Course表保存课程信息,SC表保存学生选课信息
3、,其结构如下表:表1.Student表结构列名称用途类型长度约束备注Sno学号字符8主键Sname姓名字符8Ssex性别字符2Sage年龄整型Sdept所在系字符20Sclass班级字符4表2.Course表结构列名称用途类型长度约束备注Cno课程号字符4主键Cname课程名字符40Cpno先修课程号字符4Ccredit学分整型表3.SC表结构列名称用途类型长度约束备注Sno学号字符8外键Cno课程号字符4Sage年龄整型1.创建、修改及删除基本表(1)创建Student表CREATETABLEStudent(SnoCHAR(8)PRIMARYKEY
4、,SnameCHAR(8),SsexCHAR(2)NOTNULL,SageINT,SdeptCHAR(20));(2)创建Course表CREATETABLECourse(CnoCHAR(4)PRIMARYKEY,CnameCHAR(40)NOTNULL,CpnoCHAR(4),CcreditSMALLINT,);(3)创建SC表CREATETABLESC(SnoCHAR(8)FOREIGNKEY(Sno)REFERENCESStudent(Sno),CnoCHAR(4),GradeSMALLINT,);(4)创建员工表EmployeeCREATET
5、ABLEEmployee(编号CHAR(8)PRIMARYKEY,姓名VARCHAR(8)notnull部门CHR(40),工资numeric(8,2),生日datetime,职称char(20),);指出该语句中的错误并改正后执行。(5)检查表是否创建成功SELECT*FROMStudentSELECT*FROMCourseSELECT*FROMSCSELECT*FROMEmployee(6)修改表结构及约束增加班级列ALTERTABLEStudentADDSclasschar(4)修改年龄列ALTERTABLEStudentALTERCOLU
6、MNSagesmallint增加约束ALTERTABLECourseADDUNIQUE(Cname)(7)删除表DROPTABLEEmployee2.创建索引(1)为Course表按课程名称创建索引CREATEINDEXiCnameOnCourse(Cname)(2)为Student表按学生姓名创建唯一索引CREATEUNIQUEINDEXiSnameONStudent(Sname)(3)为SC表按学号和课程号创建聚集索引CREATECLUSTEREDINDEXiSnoCnoOnSC(Sno,Cnodesc)(4)为Course表按课程号创建唯一索
7、引请自己完成该操作3.创建视图建立信息系学生的视图:CREATEVIEWIS_StudentASSELECTSno,Sname,SageFROMStudentWHERESdept='IS';3.2数据操作1.插入数据将如下表格中的数据分别插入到数据库相应的表中:表4.学生基本信息表学号姓名性别年龄所在系班级20100001李勇男20CS100120100002刘晨女19CS100120100021王敏女18MA100220100031张立男19IS100320100003刘洋女100120100010赵斌男19IS100520100022张明明男19
8、CS1002表5.课程信息表课程号课程名先修课程号学分1数据库系统原理5642高等数学23管理信息系统144