oracle初识007 序列+同义词
—–序列 sequence
序列和表一样是一种数据库对象
,用来自动生成一组唯一的序号
.
序列是一种共享式
的对象,多个用户
可以共同使用
序列中的序号.
一般将序列应用于表的主键列,这样,当向表中插入数据时,主键列就使用了序列的序号,从而保证主键不会重复
.
用序列来产生主键,可以获得可靠的主键值.
– 一句话: 序列就是序号生成器!
创建语法:
create sequence 序列名
[increment by n –-步长
start with n –- 从几开始
maxvalue n | nomaxvalue –-最大值
minvalue n | nominvalue --最小值
cycle | nocycle --是否循环
cache n | nocache ] --是否预先缓冲n个号在内存里
序列有2个伪列: nextval , currval ,代表下一个值和当前的值.
select seq1.nextval from dual;
select seq1.currval from dual;
-例子:1,3,…15并循环的序列
create sequence seq3 increment by 2
start with 5
maxvalue 15
minvalue 1
cycle
cache 3
-删除序列 sequence
Drop sequence 序列名
-修改序列
alter sequence 序列名
选项 新值
例子:
alter sqquence 序列名
maxvalue 5
-注意:
1> 不能修改开始值.
2> 修改只影响新产生的值,不影响已产生的值.
-使用序列
insert into 表名(col1,col2) values (seq1.nextval,xxx);
—–同义词 synonym
同义词就是别名,外号.
可以为数据库对象创建同义词,简化查询。
比如 xxxxtable->xt同义词.
创建语法:
Create [public] synonym 同义词 for 用户名.对象名
-public 表示所有用户可用的同义词,一般由DBA创建,普通用户不行
-对象名 可以是表名 列名 数据库名 视图名, 因为他们在oracle中都被理解为对象. (为何列也是对象?)
例子:
Create synonym g for scott.goods
-注:scott用户默认没有创建synonym的权限
需要授权:
conn sys/密码 as sysdba
grant create synonym to scott
??疑问:为啥在创建序列是create后面不能有; 创建同义词或者其他可以??
??ansi兼容等价语句 是啥??
-删除同义词
drop synonym 同义词
oracle初识007 序列+同义词相关推荐
- Oracle中的序列,同义词
Oracle中的序列,同义词 2006年08月18日 星期五 下午 01:51 什么叫序列: 1:定义: 仅向前的数字变量(和SQL中的自动编号有点像 identity(1,2 ...
- oracle两表链接序列跳序,Oracle学习之 序列(Sequence)
Oracle学习之 序列(Sequence) [Oracle学习]之 序列(Sequence) oracle文档:https://docs.oracle.com/cd/B28359_01/server ...
- Oracle中用一个序列给两个表创建主键自增功能的后果
前几天在创建数据表时,想偷个懒,使用一个序列给两个表创建主键自增功能,结果...... 情景: 为宠物中心创建一个简单的数据库,要求如下: 1.创建一个主人表,字段:主人编号,主人姓名,主人性别,主人 ...
- 7、oracle下的序列
ORACLE下的序列 序列是一种数据库对象,用于生成一系列的整数,可以用来唯一的标记一条记录,在mysql种有字段自增的概念,但是oracle种是没有字段自增的,所以可以使用序列来作为主键的自动生成方 ...
- Oracle查询所有序列;[oracle中如何创建表的自增ID(通过序列);oracle sql语句大全
Oracle查询所有序列 oracle sql语句大全 oracle中如何创建表的自增ID(通过序列)
- oracle创建dblink同义词,Oracle中DBlink与同义词
Oracle Dblink and synonym(同义词) 一.创建前提 1.具有创建link权限 2.创建同义词权限(synonym) 3.授权命令(在sys用户下) grant CREATE P ...
- Oracle sql创建序列sequence
知道的创建表序列的用途是当建立表的时候,Oracle不像Mysql一样会有自动主键增长AUTO_INCREMENT,所有如果需要主键自动增长的效果,Oracle提供了序列sequence方式. 创建序 ...
- oracle查看表空间的序号,Oracle查询所有序列
--查看当前用户的所有序列 select SEQUENCE_OWNER,SEQUENCE_NAME from dba_sequences where sequence_owner='用户名'; --查 ...
- Oracle授权及创建同义词
今天需要授权和创建同义词,特意记录学习: 例如A账号创建了表tb_users, B账号想要可以使用tb_users表,此时需要进行授权和创建同义词操作 授权操作由tb_users的owner授权(即A ...
最新文章
- 从CES Asia 2017看智能家居的发展趋势
- java版b2b2c社交电商spring cloud分布式微服务(七)springboot开启声明式事务
- java轻松实现无锁队列
- java文件读入原理_描述一下JVM加载class文件的原理机制
- 重磅!阿里云发布业界首款SaaS化防火墙
- JEECG_3.7 新版本视频正式发布
- win10环境,Eclipse安装Maven
- Liunx版本号码编排惯例
- 解决Ubuntu16.04中文乱码问题
- swift 运算符快速学习(建议懂OC或者C语言的伙伴学习参考)
- c#元胞自动机_元胞自动机+生命游戏
- PWM智能温控风扇的原理
- SPSS分析数据学习笔记
- 携程网络防火墙自动化运维之道
- 排位赛中 服务器崩溃修复后连不上,lol手游出现creating a lobby问题怎么办?服务器崩溃解决方法说明[多图]...
- 微信公众号注册已达上限怎么办?提升限额方法来了
- 河南最新道路货物运输驾驶员考试真题及答案解析
- 计算机内存和磁盘的关系
- 如何使用Kotlin构建Android旋转旋钮以帮助儿子练习钢琴
- ubuntu20下使用微信开发者工具