- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《数据库概论》实验报告书
《数据库系统概论》
实验报告书
专业班级 学 号 姓 名 指导教师
测试成绩
实验一:数据定义语言
[ 实验日期 ] 年 月 日
[ 实验目的 ]
熟悉Oracle上机环境及Oracle客户端的配置;熟练掌握和使用DDL语言,建立、修改和删除数据库表、主键、外键约束关系和索引。
[ 实验内容 ]
Oracle上机环境以及Oracle客户端的配置参见附录。
1. SQL数据定义语句:
例1-1: (建立数据库表) 建立教学数据库的四个数据库表,其中Student表中不包含SSEX(C,2) 字段,Sname 字段为Sname(C,8)且可为空。
CREATE TABLE Student(
SNO CHAR(5),
SNAME CHAR(10) NULL,
SDEPT CHAR(2),
SCLASS CHAR(2),
SAGE NUMBER(2),
CONSTRAINT SON_PK PRIMARY KEY(SNO));
CREATE TABLE Course(
CNO CHAR(3),
CNAME VARCHAR2(16),
CTIME NUMBER(3),
CONSTRAINT CNO_PK PRIMARY KEY(CNO));
CREATE TABLE Teach(
TNAME CHAR(8),
TSEX CHAR(2),
CNO CHAR(3),
TDATE DATE,
TDEPT CHAR(2),
CONSTRAINT TT_PK PRIMARY KEY(TNAME,CNO,TDEPT),
CONSTRAINT CNO_FK FOREIGN KEY(CNO) REFERENCES Course(CNO));
CREATE TABLE Score(
SNO CHAR(5),
CNO CHAR(3),
SCORE NUMBER(5,2),
CONSTRAINT SC_PK PRIMARY KEY(SNO,CNO),
CONSTRAINT CNO1_FK FOREIGN KEY(CNO) REFERENCES Course(CNO),
CONSTRAINT SNO_FK FOREIGN KEY(SNO) REFERENCES Student(SNO));
(Score表中外键名称不能为,被Teach表中约束占用)
(修改数据库表) 在Student表中增加SEX(C,2) 字段。
ALTER TABLE Student ADD SEX CHAR(2);
例1-3: (修改列名) 将Student表中列名SEX修改为SSEX。
ALTER TABLE Student RENAME COLUMN SEX TO SSEX;
例1-4: (修改数据库表) 将Student表中把Sname 字段修改为Sname(C,10)且为非空。
ALTER TABLE Student MODIFY SNAME CHAR(10) NOT NULL;
例1-5: (建立索引) 为Score表按课程号升序、分数降序建立索引,索引名为SC_GRADE。
CREATE UNIQUE INDEX SC_GRADE ON Score(CNO ASC,SCORE DESC);
例1-6: (删除索引) 删除索引SC_GRADE。
DROP INDEX SC_GRADE;
例1-7: (建立数据库表) 建立数据库表S1(SNO,SNAME,SD,SA),其字段类型定义与Student表中的相应字段(SNO,SNAME,SDEPT,SAGE)的数据类型定义相同。
CREATE TABLE S1(
SNO CHAR(5) PRIMARY KEY NOT NULL,
SNAME CHAR(10),
SD CHAR(2),
SA NUMBER(2)); create table S1 as(select SNO,SNAME,SDEPT as SD,SAGE as SA from Student where 1=2);
例1-8: (修改数据库表) 删除成绩表Score的参照完整性约束关系。
ALTER TABLE Score DROP CONSTARINT SNO_FK;
ALTER TABLE Score DROP CONSTARINT CNO1_FK;
例1-9: (修改数据库表) 添加成绩表Score的参照完整性约束关系。
ALTER TABLE SCORE ADD CONSTRAINT CNO1_FK FOREIGN KEY(CNO) REFERENCES Course(CNO);
ALTER TA
文档评论(0)