4. create table student (id varchar(17),name varchar(10),sex varchar(2),age
integer,score numeric(6,2) ) 5.
6. drop table student
7. insert into student values('A0001','赵一','男',20,580.00) 8. insert into student values('B0002','钱二','女',19,540.00) 9. insert into student values('C0003','吴三','男',19,435.00)
insert into student values('D0006','李四','男',22,480.00) insert into student values('E0006','周五','女',20,495.50) insert into student values('F0006','吴六','男',19,435.00) select *from student
select * from student where age>=20 and score<500;
实验三 数据库模式设计及建立
一、实验目的
1、让学生自己完成数据库模式的设计。 2、用SQL命令建立数据库表。 3、用可视化环境建立数据库表。 二、实验设备
1、安装能进行SQL操作的微机。 三、实验内容及说明
1、建立学生数据库模式。
学生表:student (sno, sname, ssex, sage, sdept) 学生 学号 姓名 性别 年龄 所在系 sno 长度为4的字符串
sname 长度为8的字符串 ssex 长度为2的字符串 sage 短整数
sdept 长度为10的字符串
其中sno为主码。
2、建立课程数据库模式。
课程表:course ( cno, cname, ccredit) 课程 课程号 课程名 学分
cno 长度为4的字符串 cname 长度为10的字符串 ccredit 短整数
其中cno为主码。
3、建立选课数据库模式。
选课表: sc (sno, cno, grade) 选课 学号 课程号 成绩
sno 长度为4的字符串 cno 长度为4的字符串 grade 短整数
其中(sno, cno) 为主码;sno为外码和student表对应;,cno为外码和course表对应; grade的值或空或为0—100之间。 四、实验步骤
1、用SQL语言对上述1、2、3三个表进行建立。
create schema student
create table student(sno varchar(4) primary key,sname varchar(8),ssex varchar(2),sage smallint,sdept varchar(10)) create schema course
create table course(cno varchar(4) primary key ,cname varchar(10),ccredit smallint,) create schema sc
create table sc(cno varchar(4) ,sno varchar(4) ,grade smallint,primary
key(sno,cno),foreign key (cno)references course(cno),foreign key (sno) references student(sno))
2、用可视化环境进行上述1、2、3三个表的操作。 五.思考题
1.SQL语言和可视化环境的优势各是什么? 2.SQL如何定义主码、外码和完整性约束?
实验四 数据库中数据的更新
一.实验目的
1. 对实验一已建好的student、course、sc 表进行进一步的操作。
2. 让学生充分体会SQL语言的灵活多变,功能强大,SQL语言之所以成为关系数据库语言的
原因。 二.实验设备
1.安装能进行SQL操作的微机。 三.实验内容及说明
本实验是在实验一的基础上,对实验一中的三个表进行更新操作。 四.实验步骤
1. 在student表中输入6条记录。 2. 在course 表中输入4条记录。
3. 在sc表中输入10条记录,注意有些课程可有多人选,有些课程可能没人选。 4. 练习数据的删除和修改。
5. 练习多个记录的增加、删除和修改。
6. 给student表增加一个地址(address)属性。 7. 给student表删除地址(address)属性。
8. 给sc表建立索引,先sno按升序、再按cno降序。 9. 删除上述的索引。 10. 建立视图view1,要求有sno,sname,cname,grade四个字段。 11. 建立视图view2,要求有sno,ssex,sage三个字段。
12. insert into student values('5121','张三','m',20,'cs') 13. insert into student values('5122','李四','f',19,'cs') 14. insert into student values('5123','王五','f',18,'ma') 15. insert into student values('5124','赵二','m',20,'ma')
16. insert into student values('5125','李谷一','m',19,'is')
delete from student where sname='linyong' update student
set sname='liyong'where sno='5121' select * from student
alter table student add address varchar(9)
alter table student drop column address
create index ind1 on sc (sno asc) create index ind2 on sc(cno desc)
drop index ind1 on student
delete from course where cno='5121' insert into sc values('1','5121',92) insert into sc values('2','5121',85) insert into sc values('3','5121',88) insert into sc values('2','5122',90) insert into sc values('3','5123',80) select *from sc
select *from course
insert into course values('1','database',4) insert into course values('2','math',2) insert into course values('3','inforsys',4) insert into course values('4','os',3)
insert into course values('5','construct',4)
create view v1 (学号,姓名,分数) as
select sno,sname,grade from sc where grade>69 and sex=”f” select sno,ssex,sage from student) select * from view2
五.思考题
1. SQL语言和可视化环境在数据的增、删、改方面的优势?
2. 注意检测键码约束、外码约束、非空约束、唯一约束、取值约束等各种约束在输入数据及
数据的删除、修改时的作用。
3、比较view1和view2两个视图在进行更新操作时的不同。
相关推荐: