数据库实验报告(实验一)
- 格式:doc
- 大小:13.87 MB
- 文档页数:12
沈阳工程学院
学生实验报告
(课程名称:数据库原理及应用)
实验题目:数据库模式设计
班级信安本111 学号13 姓名朱帝
日期2013-10-18 地点F612 指导教师孙宪丽、祝世东
Grade int check(Grade between 0 and 100),
primary key (Sno,Cno),
foreign key (Sno) references student(Sno),
foreign key(Cno) reference Course(Cno) );
错误分析:
foreign key(Cno) reference Course(Cno)
ERROR at line 7:
ORA-00905: missing keyword
操作错误:应将热reference改为references
程序代码:
create table Sc(
Sno char(4),
Cno char(4),
Grade int check(Grade between 0 and 100),
primary key (Sno,Cno),
foreign key (Sno) references student(Sno),
foreign key(Cno) references Course(Cno) );
运行结果:Table created.
(2)向Student 表增加"入学时间"列(列名为Scome,日期型)。
程序代码:Alter table Sc Add Scome Date;
运行结果:Table created
(3)将年龄的数据类型改为整数。
程序代码:alter table student modify(sage number);
运行结果:Table altered.
(4)为Student中sname添加列级完整性约束,不能为空。
错误代码:Alter table Student add Sname NOT NULL;
错误分析:alter table student add not null(sname);
ERROR at line 1:
ORA-00904: : invalid identifier
语法规则错误。
程序代码:Alter table Student modify ( "Sname" NOT NULL );
(5)删除Student中sname列级完整性约束。
程序代码:Alter table Student modify ( Sname NULL ) 运行结果:Table altered.
(6)为SC建立按学号升序和课程号降序建立唯一索引. 程序代码:create unique index index1 on sc (sno asc,cno desc); 运行结果:Table altered.
(7)在表student的sname字段建立一个升序索引. 程序代码:create index index2 on student(sname asc); 运行结果:Index created
(8)删除在表student的sname字段建立的索引。
程序代码:drop index index2;
(9)给student表增加一个地址(address)属性。
程序代码:alter table student add address char(30);
运行结果:
(10)给student表删除地址(address)属性。
程序代码:alter table student drop column address;
运行结果:
(11)建立视图view1,要求有sno,sname,cname,grade四个字段。程序代码:create view view1
as
select A.sno,sname,cname,grade
from student A,course B,sc C
where A.sno=C.sno and o=o;
运行结果:
(12)建立视图view2,要求有sno,ssex,sage三个字段。程序代码:create view view2
as
select sno,ssex,sage
from student;
运行结果: