实验四--oracle对象管理及使用_第1页
实验四--oracle对象管理及使用_第2页
实验四--oracle对象管理及使用_第3页
实验四--oracle对象管理及使用_第4页
实验四--oracle对象管理及使用_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验四 oracle对象管理及使用一、实验目的及要求掌握Oracle的常用对象的操作方法。会使用常用对象解决一些实际问题。二、实验主要内容(1)表结构的建立、修改、查看、删除操作。(2)索引的建立、修改、查看、删除操作。(3)视图的建立、查询、修改、删除操作。(4)同义词的建立、查询、修改、删除操作,比较对同义词的操作与对原数据库对象的操作是否一致。(5)掌握序列的建立、查询、修改、删除操作,利用序列向数据库表中插入数据。三、实验仪器设备在局域网环境下,有一台服务器和若干台客户机。服务器成功安装Oracle 11g数据库服务器(企业版),客户机成功安装Oracle 11g客户端软件,网络服务配置正确,数据库和客户端正常工作。四、实验步骤表的操作1创建表结构利用命令行方式将下列各表建立到员工医疗保险系统数据库中。表结构如附录员工医疗保险系统表1-表7所示。SQL /* =创建企业(business)表=*/SQL create table business ( 2 bno char(10) primary key, 3 bname char(50) not null, 4 btype char(4) constraint CK_1 check(btype in(企业,事业,私有), 5 baddress char(20), 6 btel char(13) 7 );表已创建。SQL /* =创建医院(hospital)表=*/SQL create table hospital( 2 hno char(5) primary key, 3 hname char(40) not null, 4 haddress char(60) 5 );表已创建。SQL /* =创建医保卡(card)表=*/SQL create table card( 2 cno char(15) primary key, 3 ctype char(4) constraint CK_2 check(ctype in(企业,事业,灵活就业), 4 cmoney number(7,2) not null 5 );表已创建。SQL /* =创建员工(staff)表=*/SQL create table staff( 2 sno char(5) primary key, 3 sname char(20) not null, 4 ssex char(2) check (ssex in(男,女), 5 sbirthday date, 6 saddress char(20), 7 stel char(15) unique, 8 cno char(15) references card(cno), 9 bno char(10) references business(bno) 10 );表已创建。SQL /* =创建就诊表(see)=*/SQL create table see ( 2 sno char(5) references staff(sno), 3 hno char(5) references hospital(hno), 4 sdate date, 5 constraint S_PK primary key(sno,hno,sdate) 6 );表已创建。SQL /* =创建消费表(consume)=*/SQL /* =创建消费表(insurance)=*/SQL create table insurance ( 2 idate date, 3 cno char(15) references card(cno), 4 imoney number(5,2) not null, 5 bno char(10) references business(bno), 6 constraint I_PK primary key (idate,cno) 7 );表已创建。SQL /* =创建消费表(consume)=*/SQL create table consume( 2 cno char(15) references card(cno), 3 hno char(5) references hospital(hno), 4 csdate date not null, 5 mname char(20), 6 mnum int not null, 7 csmoney number(7,2) not null, 8 constraint C_PK primary key(cno,hno,csdate) 9 );表已创建。2查看表结构利用SQL*Plus或iSQL*Plus从数据字典DBA_TAB _COLUMNS查看员工医疗保险系统所有表的字段信息。SELECT TABLE_NAME,COLUMN_NAME,DATA_TYPE FROM DBA_TAB_COLUMNS WHERE TABLE_NAME IN(BUSINESS,CARD,STAFF,CONSUME,HOSPITAL,SEE,INSURANCE);利用SQL*Plus或iSQL*Plus从数据字典DBA_ CONSTRAINTS查看员工医疗保险系统所有表的约束信息。SELECT CONSTRAINT_NAME,CONSTRAINT_TYPE,TABLE_NAME FROM DBA_CONSTRAINTS WHERE TABLE_NAME IN(BUSINESS,CARD,STAFF,CONSUME,HOSPITAL,SEE,INSURANCE);3删除表结构利用SQL*Plus或iSQL*Plus删除员工表3,看能否成功。从原理上解释原因,同时记录外键约束表删除顺序的影响。DROP TABLE STAFF;索引操作1.创建索引利用SQL*Plus或iSQL*Plus为医院表的医院名称创建索引,并以降序排列,索引名为“hospital_name_index”。create index hospital_name_index on hospital(hname desc);2查看索引利用SQL*Plus或iSQL*Plus从DBA_INDEXES数据字典中查看员工医疗保险系统所有索引的信息。select index_name,index_type,table_name from DBA_INDEXES where table_name in(BUSINESS,CARD,SEE,STAFF,CONSUME,HOSPITAL,INSURANCE);3删除索引利用SQL*Plus或iSQL*Plus将“hospital_name_index”索引删除。DROP INDEX hospital_name_index;视图操作1创建视图利用SQL*Plus或iSQL*Plus为实现显示医保卡信息创建视图,该视图中包括医保卡信息、医保卡所属人信息和所属人单位信息,视图名为“ygbx_card_view”。create or replace view ygbx_card_view as select o,c.ctype,c.cmoney,b.bno,b.bname,s.sno,s.sname,s.ssex,s.saddress,s.stel from card c,staff s,business b where o = o and s.bno = b.bno2查看视图利用SQL*Plus或iSQL*Plus查看“ygbx_card_view”视图的信息。select * from ygbx_card_view;3删除视图利用SQL*Plus或iSQL*Plus删除“ygbx_card_view”视图。drop view ygbx_card_view;同义词操作1创建同义词利用SQL*Plus或iSQL*Plus创建企业表同义词,名为“qyb”。CREATE SYNONYM qyb FOR BUSINESS;2查询同义词利用SQL*Plus或iSQL*Plus查看同义词“qyb”。SELECT * FROM QYB; 3删除同义词利用SQL*Plus或iSQL*Plus删除同义词“qyb”。DROP SYNONYM QYB;序列操作1创建序列利用SQL*Plus或iSQL*Plus创建序列,该序列最大值为“28000”,最小值为“60”,步长为“1”,可循环,序列名为“ygbx_seq1”。create sequence ygbx_seql maxvalue 28000 minvalue 60 increment by 1 cycle;2查询序列利用SQL*Plus或iSQL*Plus查看序列“ygbx_seq1”。select ygbx_seql.currval from dual;3修改序列利用SQL*Plus或iSQL*Plus修改序列“ygbx_seq1”,将该序列最大值设为“82000”,最小值设为“100”,步长设为“5”。alter sequence ygbx_seql maxvalue 82000 minvalue 59 increment by 5;4删除序列利用SQL*Plus或iSQL*Plus删除序列“ygbx_seq1”。drop sequence ygbx_seql;主要算法和程序清单SQL /* =创建企业(business)表=*/SQL create table business ( 2 bno char(10) primary key, 3 bname char(50) not null, 4 btype char(4) constraint CK_1 check(btype in(企业,事业,私有), 5 baddress char(20), 6 btel char(13) 7 );表已创建。SQL /* =创建医院(hospital)表=*/SQL create table hospital( 2 hno char(5) primary key, 3 hname char(40) not null, 4 haddress char(60) 5 );表已创建。SQL /* =创建医保卡(card)表=*/SQL create table card( 2 cno char(15) primary key, 3 ctype char(4) constraint CK_2 check(ctype in(企业,事业,灵活就业), 4 cmoney number(7,2) not null 5 );表已创建。SQL /* =创建员工(staff)表=*/SQL create table staff( 2 sno char(5) primary key, 3 sname char(20) not null, 4 ssex char(2) check (ssex in(男,女), 5 sbirthday date, 6 saddress char(20), 7 stel char(15) unique, 8 cno char(15) references card(cno), 9 bno char(10) references business(bno) 10 );表已创建。SQL /* =创建就诊表(see)=*/SQL create table see ( 2 sno char(5) references staff(sno), 3 hno char(5) references hospital(hno), 4 sdate date, 5 constraint S_PK primary key(sno,hno,sdate) 6 );表已创建。SQL /* =创建消费表(consume)=*/SQL /* =创建消费表(insurance)=*/SQL create table insurance ( 2 idate date, 3 cno char(15) references card(cno), 4 imoney number(5,2) not null, 5 bno char(10) references business(bno), 6 constraint I_PK primary key (idate,cno) 7 );表已创建。SQL /* =创建消费表(consume)=*/SQL create table consume( 2 cno char(15) references card(cno), 3 hno char(5) references hospital(hno), 4 csdate date not null, 5 mname char(20), 6 mnum int not null, 7 csmoney number(7,2) not null, 8 constraint C_PK primary key(cno,hno,csdate) 9 );表已创建。SELECT TABLE_NAME,COLUMN_NAME,DATA_TYPE FROM DBA_TAB_COLUMNS WHERE TABLE_NAME IN(BUSINESS,CARD,STAFF,CONSUME,HOSPITAL,SEE,INSURANCE);SELECT CONSTRAINT_NAME,CONSTRAINT_TYPE,TABLE_NAME FROM DBA_CONSTRAINTS WHERE TABLE_NAME IN(BUSINESS,CARD,STAFF,CONSUME,HOSPITAL,SEE,INSURANCE);DROP TABLE STAFF;create index hospital_name_index on hospital(hname desc);select index_name,index_type,table_name from DBA_INDEXES where table_name in(BUSINESS,CARD,SEE,STAFF,CONSUME,HOSPITAL,INSURANCE);DROP INDEX hospital_name_index;create or replace view ygbx_card_view as

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论