Oracle 创建自增列
2015-11-19 09:54
435 查看
类似SqlServer中的标识列 identity,Oracle实现同样的效果有点小复杂额,如下:
--1.创建表 create table Student( ID integer not null primary key, Name varchar2(40) not null, Sex integer, Address varchar2(100) ) tablespace MyTest_Data;--指明表空间 --2.创建序列 create sequence SEQ_StuID minvalue 1 start with 1 increment by 1 nomaxvalue nocache; --3.创建触发器 create OR REPLACE TRIGGER Trigger_StuID BEFORE insert ON Student FOR EACH ROW BEGIN if inserting then if :NEW."ID" is null then select SEQ_StuID.nextval into :NEW."ID" from dual; end if; end if; END; --4.激活触发器 alter table "admin"."Student" --用户.表名 enable all triggers; --5.插入数据 insert into Student(NAME,SEX,ADDRESS) values('张三',1,'第七街区'); --可以使用【序列名.newxtval】查看下一个要使用的序列号 --注意:以下语句执行一次会按指定的增量增加 select SEQ_StuID.nextval from dual
相关文章推荐
- oracle 导入导出
- 【转】【CUBE】Oracle分组函数之CUBE魅力
- [转]【ROLLUP】Oracle分组函数之ROLLUP魅力
- 《Oracle数据库的SQL分页模板》
- Oracle触发器使用
- oracle去重
- 解决oracle 11G exp 不能导出空表问题
- Oracle+struts2实现用户登入并显示访问次数
- 什么叫做Oracle RAC中的nodename
- oracle排序,出现页数不同数据却重复问题的原因及解决办法
- oracle索引总结
- 如何让dapper支持oracle游标呢?
- oracle去重等基础问题
- ORACLE ORA22922 不存在的LOB值解决方法
- Oracle ubuntu 下快速安装
- Oracle Linux: Error "Missing Or Invalid IPv4 Prefix '0' On Linux Server" (文档 ID 1522095.1)
- 查看Oracle的实例
- Oracle 自定义结构(Record) 记录
- Oracle存储过程中的异常处理
- oracle系统包——dbms_job用法(oracle定时任务)