实验二 交互式SQL语句的使用

上传人:ni****g 文档编号:552216329 上传时间:2023-07-07 格式:DOCX 页数:23 大小:185.12KB
返回 下载 相关 举报
实验二 交互式SQL语句的使用_第1页
第1页 / 共23页
实验二 交互式SQL语句的使用_第2页
第2页 / 共23页
实验二 交互式SQL语句的使用_第3页
第3页 / 共23页
实验二 交互式SQL语句的使用_第4页
第4页 / 共23页
实验二 交互式SQL语句的使用_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《实验二 交互式SQL语句的使用》由会员分享,可在线阅读,更多相关《实验二 交互式SQL语句的使用(23页珍藏版)》请在金锄头文库上搜索。

1、TAIYUAN UNIYESSIIY OF TECHNOLOGY本科实验报告课程名称:数据库系统原理实验项目:交互式SQL语句的使用实验地点:4606专业班级:学号:学生姓名:指导教师:2012 年 10 月 17 日目的与要求(1)掌握数据库对象的操作过程,包括创建、修改、删除。(2)熟悉表的各种操作,包括插入、修改、删除、查询。(3)熟练掌握常用 SQL 语句的基本语法。二 实验设备与环境使用 SQL Server 数据库管理系统提供的 SSMS 和查询编辑器。三 实验内容、实验记录及实验结果与分析(1)实验内容学生选课系统要求如下: 建立一个数据库和相关的表、索引、视图等数据库对象,练习

2、对表、索引和 视图的各种操作。要求认真进行实验,记录各实验用例及执行结果。 深入了解各个操作的功能。(2)实验的具体要求 数据定义 基本表的创建、修改及删除 索引的创建 视图的创建 数据操作插入数据修改数据删除数据 数据查询单表查询分组统计连接查询嵌套查询集合查询 视图操作创建视图视图查询(3)实验记录、结果一、数据定义创建学生选课数据库ST,包括三个基本表,其中Stu dent表保存学生 基本信息, Course 表保存课程信息, SC 表保存学生选课信息,其结构如下 表所示。表 2-1 Student 表结构列名称用途类型长度约束备注Sno学号字符8主键Sname姓名字符8Ssex性别字符

3、2Sage年龄整型Sdept所在系字符20Sclass班级字符4表 2-2 Course 表结构列名称用途类型长度约束备注Cno课程号字符4主键Cname课程名字符40Cpno先修课程号字符4Ccredit学分整型表 2-3 SC 表结构列名称用途类型长度约束备注Sno学号字符8外键Cno课程号字符4Sage年龄整型1创建、修改及删除基本表(1) Student 表:CREATE TABLE Student( Sno CHAR(8) PRIMARY KEY,Sname CHAR(8) ,Ssex CHAR(2) NOT NULL,Sage INT,Sdept CHAR(20);(2) Cour

4、se 表:CREATE TABLE Course( CnoCHAR(4) PRIMARYKEY,CnameCHAR(40) NOT NULL,CpnoCHAR(4) ,CcreditSMALLINT,);(3) SC 表:CREATE TABLE SC( Sno CHAR(8) FOREIGN KEY (Sno) REFERENCES Student(Sno), Cno CHAR(4),Grade SMALLINT,); 4)检查表是否创建成功SELECT * FROM Student;Cno采CnameC creditNULL/VLSZNULLSELECT * FROM SC;SnoSnam

5、eSsexSageSdeptMJ1LNLUMJILMJLLNULLSELECT * FROM Course;SnoCnoSageMLfiJULLAUZ5)修改表结构及约束 增加班级列 ALTER TABLE Student ADD Sclass char(4);SnoSnameSsexSageSdeptSdass来MJLLMJILMJLLNISINLS.L修改年龄列ALTER TABLE Student ALTER COLUMN Sage smallint;smallint增加约束ALTER TABLE Course ADD UNIQUE(Cname);2. 创建、删除索引(1) 为 Cour

6、se 表按课程名称创建索引CREATE INDEX iCname On Course(Cname);表名空Course索引名称(X1Cname索引类型:非聚隼唯一w索引键列:名称排圉顺序数据类型大小CrL:=iiTi e|mchar (40)402) 为 Student 表按学生姓名创建唯一索引CREATE UNIQUE INDEX iSname ON Student(Sname);3) 为 SC 表按学号和课程号创建聚集索引CREATE CLUSTERED INDEX iSnoCno ON SC(Sno,Cno DESC);4) 为 Course 表按课程号创建唯一索引 CREATE UNI

7、QUE INDEX iCno ON Course(Cno);索引名称:】皿索引类型皿:1非聚集B唯一 w索引键列妙名称排序顺序數据类型大小1:Cno升序char 43创建视图 建立信息系学生的视图: CREATE VIEW IS_Student AS SELECT Sno,Sname,Sage FROM Student; WHERE Sdept= IS;列别名克输出卜;SnoStudent1SnameStudentBSageStudentSdeptStudentSELECT Snor Snamgj Sage FROM dbo. StudentWHERE (Sdept = IS1)二、数据操作1

8、插入数据(1) 插入到 Student 表中:INSERT INTO Student VALUES(20100001,李勇,男,20,CS,T001)INSERT INTO Student VALUES(20100002,刘晨:女,19,CS,T001)INSERT INTO Student(Sno,Sname,Ssex,Sage,Sdept,Sclass) VALUES(20100021,王敏,女,18,MA,T002)INSERT INTO Student(Sno,Sname,Ssex,Sage,Sdept,Sclass) VALUES(20100031,张立,男,19,TS,T003)I

9、NSERT INTO Student(Sno,Sname,Ssex,Sclass)VALUES(20100003,刘洋,女,1001) INSERT INTO Student(Sno,Sname,Ssex,Sage,Sdept,Sclass)VALUES(20100010, 赵斌 , 男 ,19,IS,1005) INSERT INTO StudentVALUES(20100022,张明明,男,T9,CS,T002)SnoSn ameSsexSageSdeptSdass20100001李勇男20CS100120100002划晨女19CS10012010000320100010赵蹴男AUZMJL

10、L19IS1001100520100021王敏女18MA100220100022张明明男19CS100220100031张立男19IS1003(2) 插入到 Course 表中:INSERT INTO Course(Cno,Cname,Cpno,Ccredit)VALUES(l,数据库系统原理,5,4)INSERT INTO Course(Cno,Cname,Cpno,Ccredit)VALUES(2,高等数学,null,2)INSERT INTO Course(Cno,Cname,Cpno,Ccredit)VALUES(3,管理信息系统,1,4) INSERT INTO Course(Cno

11、,Cname,Cpno,Ccredit)VALUES(4, 操作系统系统原理,6,3) INSERT INTO Course(Cno,Cname,Cpno,Ccredit)VALUES(5,数据结构,7,4) INSERT INTO Course(Cno,Cname,Cpno,Ccredit)VALUES(6,数据处理,null,2) INSERT INTO Course(Cno,Cname,Cpno,Ccredit)VALUES(7,C 语言,null,4)CnoCnameCpnoC credit1数据库系统原理5斗2高等数学AW23管理信息慈1斗4操作系统系统原理635数拐结构7斗6数据处

12、理AUZ27匚语言斗(3)插入到SC表中:INSERT INTO SC VALUES(20100001,1,92) INSERT INTO SC VALUES(20100001,2,85) INSERT INTO SC VALUES(20100001,3,88) INSERT INTO SC VALUES(20100002,1,90)INSERT INTO SC VALUES(20100002,2,80) INSERT INTO SC(Sno,Cno) VALUES(20100003,1)INSERT INTO SC(Sno,Cno,Grade) VALUES(20100010,3,null)

13、SnoCnoGrade2010000138S201000012S5201000011922010000228020100002190201000031ML2010001034)多行插入到表中创建存一个表,保存学生的学号、姓名和年龄CREATE TABLE cs_Student( 学号 char(8),姓名 char(8),年龄 smallint);插入数据行:INSERT INTO cs_StudentSELECT Sno,Sname,SageFROM student Where Sdept=CS;5) 检查插入到表中的数据SELECT * FROM StudentSELECT * FROM Cour

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号