
数据库上的基本操作实验.docx
5页课程:数据库原理及应用B实验题目:数据库上的基本操作实验学院:计算机 班级:网络0803 学号: 姓名: 任课教师:孟彩霞 时间:一、实验目的1.掌握使用T-SQL语句语句和企业管理器对数据表进行插入,修改和删除数据的操作,并体 会数据完整性约束的作用,加深对数据完整性约束的理解2•熟练掌握INSERT、UPDATE、DELETE语句的语法和使用3•掌握SQL的查询语句(SELECT语句)的使用方法,掌握简单表的数据查询、数据排序和 多表操作时数据连接查询的操作方法4. 进一步掌握SELECT语句的使用的方法,通过实验能够熟练的使用SELECT语句本实验要 求掌握嵌套查询和统计查询的方法二、 实验内容1•分别使用T-SQL语句和企业管理器,向数据库JWGL,数据库Market,数据库SPJ,数据库 TSGL中的各张表中输入一些记录2•使用T-SQL语句进行插入,修改和删除记录的操作3. 简单查询操作包括投影,选择条件表达,数据排序等4. 连接查询操作试验包括等值连接,自然连接,一半连接(内连接),外连接,做连接, 右连接和自然链接等5. 在数据库JWGL的学生表Student,课程表Course,学生选课表SC中完成第三章3.40-3.47 中的查询操作。
6. 在数据库Market的客户表Customers,货品表Goods,订单表Orders中完成习题6中(6) -(9)的查询7•在数据库SPJ中的供应商表S,零件表P,工程项目表J,供应情况表SPJ中,用SELECT 查询语句完成第2章习题10中(4)-(5)的查询在数据库TSGL的图书,读者和借阅3个表中,用SELECT语句完成一下查询① 查询人民邮电出版社出版的各类图书的平均价格② 使用嵌套查询完成查询借了书的读者信息③ 统计目前借了书的读者人数④ 统计过期未还书的图书册数三、 实验环境MS SQL Server 2000四.实验前准备 五.实验步骤1.打开软件,熟悉 SQL Server 2000的环境2•使用和企业管理器,向数据库JWGL,数据库Market,数据库SPJ,数据库TSGL中的各张 表中输入一些记录:(1) 打开企业管理器,依次打开各个表对应的数据库2) 分别打开各个表,然后依次输入各项数据2•使用T-SQL语句进行插入,修改和删除记录的操作 (1)基本表的修改语句ALTER TABLE〈表名 >[ADD<新列名〉〈数据类型〉[〈完整性约束〉]][DROP CONSTRAINT <完整性约束名>][ALTER COLUM N〈列名〉〈数据类型〉]; 例:将年龄的数据类型改为长整形:ALTER TABLE Student ALTER COLUMN Sage INT; (2)基本表的删除语句DORP TABLE 〈表名〉 例:删除Student表:DROP TABLE Student;3. 简单查询操作。
包括投影,选择条件表达,数据排序等 例:(1)查询全体学生的学号,姓名和所在系的有关信息:SELECT Sno,Sname,SdeptFROM Student;(2) 查询全体学生的姓名及其出生年份:SELECT Sname,2010-Sage FROM Student;(3) 查询结果排序操作语句:ORDER BY< 列名〉[ASC|DESC],[・=.]例:查询选修了1号课程的学生的学号及其成绩,查询结果按成绩的降序排序:SELECT Sno,GradeFROM SCWHERE Cno=‘1'ORDER BY Grade DESC;4. 连接查询操作试验包括等值连接,自然连接,一半连接(内连接),外连接,做连接, 右连接和自然链接等1)等值连接:[〈表名1〉.]〈列名1〉〈比较运算符〉[〈表名2〉.]〈列名2〉 例:查询每个学生及其选修课的情况:SELECT Student.*,sc.*FORM Student,ScWHERE Student.Sno=Sc.sno;(2)自然连接 例:查询每门课的简介选修课SELECT First.Cno,second.CpnoFORM Course First,Course SecondWHERE Frist.Cno=So;(3)外连接SELECT〈目标列表达式〉[,〈目标列表的式〉]•••.FROM〈表名 1〉[LEFT|RIGHT|FULL[OUTER]] JOIN〈表名 2〉ON 〈表名1〉.〈列名1〉=〈表名2〉.〈列名2〉例:SELECT Student.sno,sname,ssex,sage,sdept,cno,gradeFORM Student LEFT OUTER JOIN SCON Student.sno=sc.sno;5. 在数据库JWGL的学生表Student,课程表Course,学生选课表SC中完成第三章3.40-3.47 中的查询操作。
3.40:SELECT SnameFROM studentWHERE Sno IN (SELECT SnoFROM SCWHERE Cno=‘1');3.41: SELECT Sno,SnameFROM studentWHERE Sdept= (SELECT SdeptFROM StudentWHERE Sname='张明');3.42:SELECT sname,sageFROM studentWHERE Sdept<>‘CS'AND Sage
6) :SELECT CustomerID , GoodID, orderIDFROM OrdersWHERE Qauntity>200GROUP BY Date;(7) :SELECT *FROM ordersWHERE CustomerID IN(SELECT CustomerIDFROM CustomersWHERE CITY='北京');(8) :SELECT *FROM ordersWHERE CustomerID NOT IN(SELECT CustomerIDFROM CustomerWHERE CITY='天津');(9) :SELECT Customers, CustomerID , Cname, CITY, orderID, GoodID, Qauntity,ordersum, DateFROM Orders CustomersWHERE Customers.CustomerID=orders CustomerlDAND CITY='西安';7•在数据库SPJ中的供应商表S,零件表P,工程项目表J,供应情况表SPJ中,用SELECT 查询语句完成第2章习题10中(4)-(5)的查询。
S表:CREATE TABLE S(SNO CHAR(6) PRIMARY KEY,SNAME CHAR(10) UNIQUE,STAUS INT,CITY CHAR(10));P表:CREATE TABLE P(PNAME CHAR(10) UNIQUE, COLOR SMALLINT NOT NULL, WEIGHT INT);J表:CREATE TABLE J(JNO CHAR(6) PRIMARY KEY,JNAME CHAR(6) UNIQUE,CITY CHAR(10) NOT NULL);SPJ 表:CREATE TABLES( SNO CHAR(6),PNO CHAR(6),JNO CHAR(6),QTY INT,PRIMARY KEY (SNO ,PNO,JNO),FOREIGN KEY(SNO) REFERENCES S(SNO),FOREIGN KEY(PNO) REFERENCES S(PNO), FOREIGN KEY(JNO) REFERENCES S(JNO));&在数据库TSGL的图书,读者和借阅3个表中,用SELECT语句完成查询六.实验结果 七.评价分析及心得体味。












