IT猫扑网文章教程

分类分类

Oracle同义词与序列基本使用

2015-06-28 00:00作者:网管联盟

  同义词:同义词是一个对象的替代名称

  作用:利用同义词可以很方便地操纵不同用户模式下的对象。

  通过select user from dual查看当前使用的用户。

  访问其它用户模式下的表:

  select * from scott.dept; 表示查看scott用户模式下的dept表数据。

  同义词分为private 和 public,private仅创建的用户可以使用。public则所有用户都可以使用。

  语法:

  CREATE SYNONYN DEPT FOR SCOTT.DEPT;

  表示将scoot用户下的dept表,创建为当前用户的同义词。默认为private。

  通过drop synonym dept删除。

  create public synonym dept for scott.dept;

  表示创建一个公共的,在其它用户模式下也同样的进行查询。

  --------------------------------------------------------------------------------

  序列

  作用:独立的事务,按一定的增量自动增加或减少,一组整型值。

  语法:

  create sequence myseq start with 1 --从1开始

  increment by 1 --每次增加1

  order --从小到大排序

  nocycle;--为了避免取到重复值,不进行序列循环,此项为影响性能,使数据库被迫访问磁盘。

  使用方法:

  select myseq.nextval from dual;

  通过nextval取得下一个值。

  通过select myseq.currval from dual; 查看当前序列的值。

  如果数据库重启,不能马上通过currval来查看序列的当前值,要通过nextval取完值后,再通过currval查看当前序列的值。

  desc dba_sequences 查看dba下sequence的情况。同样包括all_sequences,user_sequences.

  修改序列递增是:

  ALTER SEQUENCE MYSEQ INCREMENT BY 3;

  通过修改的方式修改序列的递增量。但不能修改序列的当前值。

展开全部

相关文章

说两句网友评论
    我要跟贴
    取消