Oracle创建自增字段方法 ORACLE SEQUENCE的简单介绍
先假设有这么一个表:
create
table
S_Depart (
DepartId
INT
not
null
,
DepartName NVARCHAR2(
40
)
not
null
,
DepartOrder
INT
default
0
,
constraint
PK_S_DEPART
primary
key
(DepartId)
);
在oracle中sequence就是所谓的序列号,每次取的时候它会自动增加,一般用在需要按序列号排序的地方。
1、Create Sequence
你首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE权限,
CREATE SEQUENCE emp_sequence
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXvalue -- 不设置最大值
NOCYCLE -- 一直累加,不循环
CACHE 10; --设置缓存cache个序列,如果系统down掉了或者其它情况将会导致序列不连续,也可以设置为---------NOCACHE
针对S_Depart创建的sequence如下:
create
sequence S_S_DEPART
minvalue
1
maxvalue
999999999999999999999999999
start
with
1
increment
by
1
nocache;
一旦定义了emp_sequence,你就可以用CURRVAL,NEXTVAL
CURRVAL=返回 sequence的当前值
NEXTVAL=增加sequence的值,然后返回 sequence 值
比如:
emp_sequence.CURRVAL
emp_sequence.NEXTVAL
可以使用sequence的地方:
- 不包含子查询、snapshot、VIEW的 SELECT 语句
- INSERT语句的子查询中
- NSERT语句的valueS中
- UPDATE 的 SET中
�
相关文档:
日期格式参数 含义说明
D 一周中的星期几
DAY 天的名字,使用空格填充到9个字符
DD 月中的第几天
DDD 年中的第几天
DY 天的简写名
IW ISO标准的年中的第几周
IYYY ISO标准的四位年份
YYYY 四位年份
YYY,YY,Y 年份的最后三位,两位,一位
HH 小时,按12小� ......
一.说明
oracle 的exp/imp命令用于实现对数据库的导出/导入操作;
exp命令用于把数据从远程数据库服务器导出至本地,生成dmp文件;
imp命令用于把本地的数据库dmp文件从本地导入到远程的Oracle数据库中。
二.语法
可以通过在命令行输入 imp help=y 获取imp的语法信息:
========= ......
oracle数据库的优点一:
ORACLE7.X以来引入了共享SQL和多线索服务器体系结构。这减少了ORACLE的资源占用,并增强了ORACLE的能力,使之在低档软硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上可以支持成百上千个用户。
oracle数据库的优点二:
提供了基于角色(ROLE)分工的安全保密管理。在数据库管理功能 ......
之前项目有用到的一些导入和导出,时至已久整理一下,做个记号
导入文件:
1. 在某路径下写控制文件 e:\testRegionControl.ctl :
load data
infile e:\region.txt
truncate into table region
fields terminated by X'09'
TRAILING NULLCOLS
(
PPCC_ID&nbs ......
1、用来插入大量测试数据的存储过程
CREATE OR REPLACE PROCEDURE INSERTAMOUNTTEST
(
ST_NUM IN NUMBER,
ED_NUM IN NUMBER
)
IS
BEGIN
declare
......