同义词

--同义词允许在其他用户下查询当前用户的表而不用添加用户前缀,个人理解为快捷方式
--创建同义词需要权限
grant create any synonym to username;
--创建同义词
create [public] synonym mytablename for [username.]tablename;
--删除同义词
drop public synonym mytablename;

视图

--视图可以理解为一个查询语句的封装,无入参,和数据表一样的使用
--创建视图示例
create or replace view v_viewname
as
select t.column1, t.column2, t.column3
  from user1.table1 t
 where t.column1 = 'value1';
 --删除视图
 drop view v_viewname;


--[or replace] 用于替换已存在的视图

序列

--创建序列 基本语法
create sequence seq_seqname
  [increment by n]
  [start with n]
  [{maxvalue  minvalue n|nomaxvalue}]
  [{cycle|nocycle}]
  [{cache n|nocache}];


--increment by 序列中两个数字的差,默认为1
--start with 序列初始值,默认为1
--maxvalue 序列最大值,minvalue 序列最小值,默认 nomaxvalue 没有最大值
--cycle 序列值达到 maxvalue  minvalue 时循环
--catch 序列缓冲区内存块大小,默认为20


--用法
--创建示例
create sequence seq_seqnameincrement by 1 start with 1;
--查询序列下一个值,查询时会更新序列
select seq_seqname.nextval from dual;
--查询序列当前值
select seq_seqname.currval from dual;
--删除序列
drop sequence seq_seqname;


--修改序列,修改序列不会修改序列已产生的值
alter sequence seq_seqname increment BY 10 maxvalue 10000 cycle;
最后修改:2021 年 10 月 25 日
如果觉得我的文章对你有用,请随意赞赏