Oracle(数据库对象)

本文详细介绍了数据库对象如表同义词、序列、视图和索引的创建、语法和权限管理,以及它们在数据库设计中的关键作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据库对象:
能够使用create创建的都可以成为数据库对象。

同义词,序列,视图,索引

同义词: synonym
1.对已有的数据表对象起别名
2.为了更方便让其他用户拿到数据表
3.公开同义词:所有用户都能被访问(这些用户必须拥有查询的权限)(pubilc)
4.私有同义词:只有当前用户所创建的才能访问。(private)

语法:
公开同义词:create public synonym 同义词名称 for 表名
私有同义词:create synonym 同义词名称 for 表名


权限:
grant create public synonym from scott;
grant create synonym from scott;


--给予nb这个用户去查询emp表的权限
grant select on scott.emp on nb;

=========================================================================

序列:sequence
1.与伪列rownum类似,区别在于:rownum属于主动创建,而序列属于手动创建,序列会生成一连串有顺序的数字,默认从1开始。

#2.重点:序列结合触发器trigger来实现主键的标识列。
#3.语法:
create sequence 序列名称;
一般语法
create sequence 序列名称
start with 值 ---序列值从哪里开始
increment by 值 ---序列值每次以指定的值进行增长
maxvalue 值 ---最大值
minvalue 值 --最小值

序列中的两个伪列属性:
curral(获取当前序列的值)
select s_demo1.currval from dual;

nextval(获取当前序列的下一个值)
select s_demo1.nextval from dual;

=========================================================================
视图:一张虚拟表,通过sql语句查询的结构进行保存,视图相当于一个容器(方便查看结果)

1.通过视图保存的结果集必须唯一
2.必须保证字段有名字
#关键字:view
#语法:
create view v_视图名称
as
select|update

例一:
create view v_demo1
as
select emp.*,dept.dname from emp inner join dept on emp.deptno = dept.deptno

--视图给予权限
grant create view to scott;

--删除视图
drop view v_demo2;

索引(标识) index
--数据库中一种特定的排布方式  类似课本的目录(方便查找)
--索引的建立:为了提高查询的效率,创建表时,如果该表中设立了主键约束,自动会给这个主键的字段创建一个唯一索引。
语法:
create index 表名
on 表(字段)

--删除索引
drop index v_demo2;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值