1、sql数据库的建立和维护实验二: 数据库的建立和维护学号: 姓名: 实验二: 数据库的建立和维护实验目的熟练掌握建立数据库和表,向数据库输入数据、修改数据和删除数据的操作。实验内容建立数据库并设计各表,输入多条实际数据,并实现数据的增、删、改操作。实验步骤:创建用于学生管理数据库,数据库名为XSGL,包含学生的基本信息,课程信息和选课信息。数据库XSGL包含下列3个表: (l) student:学生基本信息。 (2)course:课程信息表。 (3)sc:学生选课表。各表的结构分别如表1、表2和表3所示。表1 学生信息表:student列名数据类型长度是否允许为空值sno字符型10否sname
2、字符型10否ssex字符型2否sage整数型是sdept字符型4否表2 课程信息表:course列名数据类型长度是否允许为空值cno字符型3否cname字符型30否credit整数型是pcno字符型3是表3 学生选课表:sc列名数据类型长度是否允许为空值sno字符型10否cno字符型30否grade整数型是一. 数据库的建立:1 用可视化界面建立:(a) 在SQL SERVER2005中用Management Studio-新建数据库;2 命令方式建立:(a) 在SQL SERVER2005中,在新建查询中使用T-SQL语句:(在做如下操作前,请将第一实验建立的XSGL数据库删除)CREATE
3、 DATABASE XSGL ON (NAME=XSGL_DATA, FILENAME=D:XSGL.MDF, SIZE=10MB, MAXSIZE=50MB, FILEGROWTH=5%) LOG ON (NAME=XSGL_Log, FILENAME=D:XSGL_Log.ldf, SIZE=2MB, MAXSIZE=5MB, FILEGROWTH=1MB)二. 表的建立:1 用可视化界面建立:在SQL SERVER2005中用Management Studio数据库XSGL表右键新建表;2 命令方式建立:在SQL SERVER2005 中的”新建查询”编辑窗口中用下列SQL语句:use
4、XSGLCreate table student(sno varchar(10) NOT NULL, sname varchar (10) NOT NULL, ssex varchar (2) NOT NULL, sage int NULL, sdept varchar (10) NOT NULL)goCreate table course(cno varchar (3) NOT NULL , cname varchar (30) NOT NULL, credit int NULL, pcno varchar (3) NULL)goCreate table sc(sno varchar (10
5、) NOT NULL, cno varchar (30) NOT NULL, grade INT NULL)go三. 表数据的添加:1. 用可视化方法: I: 在SQL SERVER2005中用Management Studio数据库XSGL表表名右键打开表返回所有行;输入下列数据:snosnamessexsagesdept95001李勇男20CS95002刘晨女19IS95003王敏女18MA95004张立男19IS95005刘云女18CScnocnamecreditpcno1数据库452数学63信息系统314操作系统465数据结构476数据处理37PASCAL语言46snocnograde
6、95001192950012859500138895002290950023809500328595004158950042852. 在SQL SERVER2005”新建查询”的编辑窗口中使用下列SQL 语句插入数据:Select * from student (查看插入前的记录信息)insert into student(sno,sname, ssex,sage,sdept) values(95001, 李勇, 男, 20, CS)insert into student(sno,sname, ssex,sage,sdept) values(95002, 刘晨, 女, 19, IS)inser
7、t into student(sno,sname, ssex,sage,sdept) values(95003, 王敏, 女, 18, MA)insert into student(sno,sname, ssex,sage,sdept) values(95004, 张立, 男, 19, IS)insert into student(sno,sname, ssex,sage,sdept) values(95005, 刘云, 女, 18, CS )Select * from student (查看插入后的记录信息)Select * from course (查看插入前的记录信息)insert in
8、to course(cno, cname,credit,pcno) values(1, 数据库, 4, 5)insert into course(cno, cname,credit,pcno) values(2, 数学, 6, null) insert into course(cno, cname,credit,pcno) values(3, 信息系统, 3, 1)insert into course(cno, cname,credit,pcno) values(4, 操作系统, 4, 6)insert into course(cno, cname,credit,pcno) values(5,
9、 数据结构, 4, 7)insert into course(cno, cname,credit,pcno) values(6, 数据处理, 3, null) insert into course(cno, cname,credit,pcno) values(7, PASCAL语言, 4, 6)Select * from course (查看插入前的记录信息)Select * from sc (查看插入前的记录信息)insert into sc(sno,cno,grade) values(95001, 1 ,92)insert into sc(sno,cno,grade) values(950
10、01, 2 ,85)insert into sc(sno,cno,grade) values(95001, 3 ,88)insert into sc(sno,cno,grade) values(95002, 2 ,90)insert into sc(sno,cno,grade) values(95002, 3 ,80)insert into sc(sno,cno,grade) values(95003, 2 ,85)insert into sc(sno,cno,grade) values(95004, 1 ,58)insert into sc(sno,cno,grade) values(950
11、04, 2 ,85)Select * from sc (查看插入后的记录信息)四. 表数据的修改:1. 用可视化方法: 在SQL SERVER 2005中用Management Studio数据库XSGL表表名右键打开表返回所有行;在表格中将相应的数据修改即可。2命令方法:在SQL SERVER2005”新建查询”的编辑窗口中使用下列SQL 语句修改数据。1)将所有学生的年龄增加一岁: Select * from student (查看更新前的记录) update student set sage=sage+1 Select * from student (查看更新后的记录)2)将4号课程的学
12、分改为5: Select * from course (查看更新前的记录) update course set credit=4 where cno=5 Select * from course (查看更新后的记录)3) 设置7号课程没有先行课: Select * from course (查看更新前的记录) update course set pcno=null where cno=7Select * from course (查看更新后的记录)4)将95001号学生的1号课程的成绩增加3分: Select * from sc (查看更新前的记录) update sc set grade=g
13、rade+3 where sno=95001 and cno=1Select * from sc (查看更新后的记录)五. 表数据的删除:1. 用可视化方法: 在SQL SERVER中Management Studio数据库XSGL表表名右键打开表返回所有行;单击左边的行标记, 选定某一行, 或单击后拖动选择相邻的多行, 再右击鼠标选择弹出式菜单中的删除。2命令方法:在SQL SERVER2005”新建查询”的编辑窗口中使用下列SQL 语句删除数据。1)删除学号为95005的学生的记录:Select * from student (查看删除前的记录)delete from student where sno95005 Select * from student(查看删除后的记录)2)删除所有的课程记录:Select * from course (查看删除前的记录)delete from course Select * from course (查看删除后的记录)3) 删除成绩为不及格(少于60分)的学生的选课记录:Select * from sc (查看删除前的记录)delete from sc where grade60Select * from sc (查看删除后的记录)思考:比较用可视化界面与命令方式在数据的插入、修改、删除方面的优缺点。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1