分布式数据库 实验2

  • 格式:doc
  • 大小:49.00 KB
  • 文档页数:4

下载文档原格式

  / 4
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
INSERT INTO Course VALUES(4,'操作系统',6,3);
INSERT INTO Course VALUES(5,'数据结构',7,4);
INSERT INTO Course VALUES(1,'数据库',5,4);
INSERT INTO Course VALUES(2,'数学',null,2);
INSERT INTO Course VALUES(3,'信息系统',1,4);
第二条语句中的对应先行课是‘1’,第一条语句中课程号‘1’相对应,能查询到,语句能执行;第二条语句中的对应先行课是‘5’,它没有上一条语句,没法查询到,所以无法执行,执行的顺序是:
INSERT INTO Course VALUES(6,'数据处理',null,2);
FROM student
WHERESdept='CS';
select * from V_CS_STUDENT;
/*q5*/
CREATE TABLE SC (
Sno CHAR(9),
Cno CHAR(4),
CGrade SMALLINT,
PRIMARY KEY (Sno,Cno),
FOREIGN KEY (Sno) REFERENCES Student(Sno),
INSERT INTO Course VALUES(3,'信息系统',1,4);
/*q3*/
alter table student add Ssex char(2);
update student
set Ssex = '男'
where(Sno='200215121' or Sno='200515125');
Cname char(20),
Cpno char(4),
Ccredit smallint,
foreign key (Cpno) references Course(Cno)
);
INSERT INTO Course VALUES(6,'数据处理',null,2);
INSERT INTO Course VALUES(7,'PASCAL',6,4);
update student
set Ssex = '女'
where(Sno='200215122' or Sno='200215123' );
select * from student;
/*q4百度文库/
create VIEW V_CS_STUDENT
AS
SELECT Sno, Sname, Ssex, Sage
where Sno in
(select Sno from Student
where Sname='李勇');
select * from sc;
出现的问题及解决方案:
1.在做第二个问题的时候,添加信息,运行有错误,违背数据库规则,无法显示表格。由于设置了先行课‘Cpno’,解释如下:
如果执行顺序是:INSERT INTO Course VALUES(1,'数据库',5,4);
200215122
200215122
1
2
3
2
3
92
85
88
90
80
6)查询
(a)查全体学生的姓名及其出生年份
(b)查询数学课程的平均成绩
(c)查询CS系学生的选课情况,列出(姓名,课程名,成绩)
7)删除李勇的选课记录
/*q1*/
create table Course (
Cno char(4) primary key,
《分布式数据库》实验报告
题目:交互式SQL语言
姓名
赵越
日期
2011年10月20日星期四
实验环境:
软件环境:KingbaseES数据库
硬件环境:计算机
实验内容及完成情况:
实验内容:
1)创建课程表COURSE,包括下列属性:
课程编号CNO(CHAR型,长度4,主码)
课程名称CNAME(CHAR型,长度20,主码)
INSERT INTO SC VALUES(200215122,2,90);
INSERT INTO SC VALUES(200215122,3,80);
select * from sc;
/*q6*/
SELECT Sname,2004-Sage
FROM Student
/*q7*/
delete from SC
INSERT INTO Course VALUES(2,'数学',null,2);
INSERT INTO Course VALUES(3,'信息系统',1,4);
2.执行第三个问题的时候,显示有错误,提示关系不存在,解决的办法是,将语句段落分别执行,再执行‘select * from student;’就出现了结果。
PASCAL语言
5
1
6
7
6
4
2
4
3
4
2
4
3)在学生表STUDENT中加入性别SSEX(CHAR型,长度2)属性,并显示所有女生的学号和姓名,并显示
学号
Sno
性别
Ssex
200215121
200215122
200215123
200515125




4)在Student表上,创建CS系的所有学生的视图,并显示。
FOREIGN KEY (Cno) REFERENCES Course(Cno)
);
INSERT INTO SC VALUES(200215121,1,92);
INSERT INTO SC VALUES(200215121,2,85);
INSERT INTO SC VALUES(200215121,3,88);
INSERT INTO Course VALUES(7,'PASCAL',6,4);
INSERT INTO Course VALUES(4,'操作系统',6,3);
INSERT INTO Course VALUES(5,'数据结构',7,4);
INSERT INTO Course VALUES(1,'数据库',5,4);
先修课CPNO(CHAR型,长度4)
学分CCREDIT(SMALLINT),先修课需从课程编号中选出。
在创建后,删除该课程基本表。
2)创建(1)中COURSE课程表,并添加下列信息,并显示。
课程号
Cno
课程名
Cname
先行课
Cpno
学分
Ccredit
1
2
3
4
5
6
7
数据库
数学
信息系统
操作系统
数据结构
数据处理
5)创建学生选课表SC,包括下列属性:
课程编号CNO(CHAR型,长度4,主码)
学生编号CNAME(CHAR型,长度8,主码)
成绩CGRADE(SMALLINT型),主码为(课程编号,学生编),分别为学生表和课程表的外码。
学号
Sno
课程号
Cno
成绩
Grade
200215121
200215121
200215121
Cname char(20),
Cpno char(4),
Ccredit smallint,
foreign key (Cpno) references Course(Cno)
);
drop table Course;
/*q2*/
create table Course (
Cno char(4) primary key,

相关主题