9、oracle数据库下的视图和同义词

ORACLE下的视图和同义词

1.视图

视图就是一个查询的结果,可能包含一张表或者多张表的信息,创建视图其目的在于,便于查看表中的信息。视图只是在逻辑上存在。

1.1创建/修改视图

创建视图一定要有CREATE VIEW权限,基本语法为:

creare view 视图名 AS
SQL语句
with read only --是否只读
with check option --是否执行约束检查

-- 创建视图

CREATE VIEW view_name AS SELECT * FROM dept WHERE deptno<20;

-- 修改视图

CREATE OR REPLACE VIEW view_name AS SELECT * FROM dept WHERE deptno<20;

-- 去除视图的相关约束
ALTER VIEW emp DROP CONSTRAINT ...

1.2使用视图

查看视图

-- 查看所有视图
SELECT * FROM user_views;

1.3 删除视图

DROP VIEW 视图名

2.同义词

同义词是现有对象的一个别名,用于简化sql语句、隐藏对象的名称和所有者、提供对对象的公共访问。同义词有私有同义词和公有同义词,公有同义词可被所有的数据库用户访问,私有同义词只能在其模式(所属用户)内访问,且不能与当前模式的对象同名。举个例子:

-- 查看所有表

select * from table

--- 查看当前用户下的表

select * from tab

此处的tab就是一个同义词

2.1 创建/修改同义词

创建同义词必须具有CREATE [PUBLIC] SYNONYM权限

CREATE SYNONYM 同义词名 FOR 视图名;

--- 创建私有同义词

create synonym syn_emp for emp;

--- 查看同义词

select * from syn_emp;

--- 创建共有同义词

create public synonym syn_dept for dept;

-- 用户没有访问基表的权限,如果为基表创建了共有同义词,那么依然看不到表信息

创建或替换现有同义词

create or replace synonym emp_syn for scott.emp;

2.2删除同义词

--- 删除共有同义词

drop public synonym syn_dept;

--- 删除私有同义词

drop synonym syn_dept;

2.3 使用同义词
多用于查询操作中,类似别名,多用于分布式数据库中

SELECT * FROM 同义词;

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值