时间:2021-07-01 10:21:17 帮助过:49人阅读
(1) 利用企业管理器查看“ygbx_user”方案下的视图。
(2) 利用企业管理器查看“consume_view”视图的信息。
(3)利用SQL*Plus或iSQL*Plus查看“card_view”视图的子查询语句。
SQL> select text from user_views where view_name=‘YGBX_CARD_UIEW‘
2 ;
(4)利用SQL*Plus或iSQL*Plus显示“insurance_view”视图的信息。
SQL> select view_name,view_type,read_only,text,text_length from user_views
2 where view_name=‘insurance_view‘
3 ;
3.视图数据的更新
(1) 利用SQL*Plus或iSQL*Plus向“business_view”插入一个记录,企业编号为“B1997010287”,企业名称为“格林制药”,企业类型为“企业”,企业地址为“鸭绿江街98号”,联系电话为“84692315”。
SQL> alter table business modify(bno char(20));
表已更改。
SQL> insert into business_view values(‘B1997010287‘,‘格林制药‘,‘企业‘,‘鸭绿江街98号‘,‘84692315‘);
已创建 1 行。
(2) 利用SQL*Plus或iSQL*Plus查看“business”表是否有变化。
SQL> select * from business;
4.删除视图
(1) 利用企业管理器删除“business_view”视图。
(2) 利用企业管理器删除“card_view”视图。
(3) 利用SQL*Plus或iSQL*Plus删除“consume_view”视图。
SQL> drop view consume_view;
(4) 利用SQL*Plus或iSQL*Plus删除“insurnce_view”视图。
SQL> drop view insurance_view;
5.创建同义词
(1) 利用企业管理器创建企业表同义词,名为“qyb”。
SQL> grant create public synonym to scott;
授权成功。
(2) 利用SQL*Plus或iSQL*Plus创建医保卡表的同义词,名为“ybk”。
SQL> create synonym ybk for card;
同义词已创建。
6.查询同义词
(1) 利用企业管理器查看同义词“qyb”。
(2) 利用SQL*Plus或iSQL*Plus查看同义词“ybk”。
SQL> select * from user_synonyms where synonym_name=‘ybk‘;
7.删除同义词
(1) 利用企业管理器删除同义词“qyb”。
(2) 利用SQL*Plus或iSQL*Plus删除同义词“ybk”。
SQL> drop synonym ybk;
同义词已删除。
8.创建序列
(1) 利用企业管理器创建序列,该序列最大值为“28000”,最小值为“60”,步长为“1”,可循环,序列名为“ygbx_seq1”。
(2) 利用SQL*Plus或iSQL*Plus创建序列,该序列最大值无限制,最小值为“1”,步长为“10”,序列名为“ygbx_seq2”。
SQL> create sequence ygbx_seq2 nocycle noorder nomaxvalue minvalue 1
2 increment by 10 start with 1;
序列已创建。
9.查询序列
(1) 利用企业管理器查看序列“ygbx_seq1”。
(2) 利用SQL*Plus或iSQL*Plus查看同义词“ygbx_seq2”。
SQL> select * from user_sequences where sequence_name=‘ygbx_seq2‘;
10.修改序列
(1) 利用企业管理器修改序列“ygbx_seq1”,将该序列最大值设为“82000”,最小值设为“100”,步长设为“5”。
最小值不能大于当前值,所以最小值为60
(2) 利用SQL*Plus或iSQL*Plus修改序列“ygbx_seq2”,将该序列最大值设为“1000”。
SQL> alter sequence ygbx_seq2 maxvalue 1000;
序列已更改。
11.删除序列
(1) 利用企业管理器删除序列“ygbx_seq1”。
(2) 利用SQL*Plus或iSQL*Plus删除序列“ygbx_seq2”。
SQL> drop sequence ygbx_seq2;
序列已删除。
表1 企业(business)表结构
表2医院(hospital)表结构
表3医保卡(card)表结构
表4员工(staff)表结构
表5就诊表(see)结构
表6消费(consume)表结构
表7医保(insurance)表结构
实验总结:
1. 可以采用CREATE OR REPLACE VIEW 语句修改视图,实质是删除原视图并重建该视图,但是会保留该视图上授予的各种权限。
2. 序列用于产生惟一序号的数据库对象,用于为多个数据库用户依次生成不重复的连续整数。通常使用序列自动生成表中的主键值。序列不占用实际的存储空间,在数据字典中只存储序列的定义描述。
3. 视图是从一个或多个表或视图中提取出来的数据的一种表现形式。在数据库中只有视图的定义,而没有实际对应“表”的存在,因此视图是一个“虚”表。当对视图进行操作时,系统根据视图定义临时生成数据。
4. 可以使用DROP VIEW语句删除视图。删除视图后,该视图的定义从数据字典中删除,同时该视图上的权限被回收,但是对数据库表没有任何影响。
5. 同义词是数据库中表、索引、视图或其他模式对象的一个别名。利用同义词,一方面为数据库对象提供一定的安全性保证,例如可以隐藏对象的实际名称和所有者信息,或隐藏分布式数据库中远程对象的位置信息;另一个方面是简化对象访问。
6. 视图创建后,就可以对视图进行操作,包括数据查询、DML操作等。因为视图是“虚表”,因此对视图的操作最终转换为对基本表的操作。
oracle视图及其他对象操作
标签: