oracle 实现主键自增
-- 创建表
drop table test;
create table test(id number(10), name varchar2(10));
-- 创建对列
drop sequence seq_id;
create sequence seq_id minvalue 1 nomaxvalue start with 1 increment by 1 nocycle nocache;
/*
minvalue 1 最小值
nomaxvalue 不设置最大值(由机器决定),或根据表字段的值范围设置 maxvalue
start with 1 从1开始计数,数值可变
increment by 1 每次加1,数值可变
nocycle 一直累加,不循环
nocache 不建缓冲区,如果建立cache那么系统将自动读取cache值个seq,这样会加快运行速度;
如果当机或oracle死了,那么下次读取的seq值将不连贯*/
-- sys 登陆授权
grant create trigger to scott;
-- 创建触发器, 注意创建触发器 “end;” 后面必须加一个回车和“/”,才可以执行;
create or replace trigger test_id_increment
before insert on test
for each row
begin
select seq_id.nextval into:new.id from dual;
end;
/
-- 测试
select * from test;
insert into test(name) values('张三');
insert into test values(null, '张三');
select * from test;
oracle 实现主键自增的更多相关文章
- oracle中主键自增
oracle中主键自增 下面用一个例子来说明自增主键的创建: 1.建用户数据表 drop table dectuser; create table dectuser( userid integer p ...
- 关于oracle设置主键自增的问题
关于orcale设置主键自增的问题 关于主键Oracle中并没有提供一个直接的语句设置,对于这个oralce一般都是用序列和触发器来实现 一下又两种方法来实现 一 ,不使用触发器 创建序列: crea ...
- Oracle设置主键自增
oracle没有mysql那样可以有自增主键,需要自己通过创建序列才能实现自增 /*创建自增序列*/ CREATE SEQUENCE CMB_CHINA_CITYS_ID MINVALUE --最小值 ...
- Oracle实现主键自增的几种方式
数据库作为一个系统的核心,数据库设计的1NF就是一个表结构必须有唯一约束也就是主键,Oracle数据库本身没有自增机制,不像MySQL直接使用关键字AUTO_INCREMENT自动加一,所以需要我们去 ...
- MySQL,Oracle建立主键自增表
MySQL 在建表的时候声明字段即可 id int auto_increment primary key not null Oracle 第一步:建立表 drop table t_role; crea ...
- oracle实现主键自增
首先,创建一张表: CREATE TABLE example( ID Number(4) NOT NULL PRIMARY KEY, NAME VARCHAR(25)); 然后,自定义一个序列(seq ...
- oracle主键自增
oracle主键自增 1建立数据表 create table Test_Increase( userid number(10) primary key, /*主键,自动增加*/ ...
- for循环往Oracle中插入n条数据,主键自增
1.主键自增实现方法:http://www.cnblogs.com/Donnnnnn/p/5959871.html 2.for循环往Oracle中插入n条数据 BEGIN .. loop insert ...
- oracle 主键自增 设置----杜恩德
<div id="topicList"> <div class="forFlow"> <div class = "pos ...
随机推荐
- Spring Security构建Rest服务-0801-短信验证码发送
实现短信验证码登录 开发短信验证码接口 校验短信验证码并登录 短信验证码和图片验证码开发思路类似: 1,我们访问一个controller 2,在controller里调用短信验证码生成接口生成验证码 ...
- Javascript中Date对象的格式化
很多语言中都带有日期的格式化函数,而Javascript中却没有提供类似的方法.之前从某位前人的帖子中发现了下面的代码,感觉非常简洁,存留备用. /** * 时间对象的格式化; */ Date.pro ...
- NiftyDialogEffects-多种弹出效果的对话框
感觉系统自带的对话框弹出太生硬?那就试试NiftyDialogEffects吧,类似于(Nifty Modal Window Effects),效果是模仿里面实现的 ScreenShot . . ...
- ES6-Array
/* * 数组解构赋值: * ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这种被称为解构. * 示例如下: */ var [a,b,c] = [1,2,3]; console.log ...
- R语言-RStudio快捷键总结
一.控制台 功能 Windows & Linux Mac 移动鼠标到控制台 Ctrl+2 Ctrl+2 移动到鼠标命令编辑 Ctrl+1 Ctrl+1 控制台清屏 Ctrl+L Comm ...
- xgboost使用
xgboost的实现方式为多颗CART树,其实xgboost就是类似于随机森林,但是与随机森林不同,他不是多个子树决策的结果,CART树最后会算出一个得分,是一个值,最后算出分类的时候,是多个值结合在 ...
- YAOLEI
http://www.cnblogs.com/skyblue/p/3356933.html
- Vue教程:windows下安装npm和cnpm
[安装步骤] 一.安装node.js 1.前往node.js官网下载并安装工具,这里安装路径选到D盘,D:\Program Files\nodejs 安装完毕在命令行输入以下命令测试是否安装成功,正确 ...
- springboots 配置文件
1.build.gradle buildscript { // 声明变量 ext { springBootVersion = '1.5.2.RELEASE' } // 仓库 repositories ...
- [转]Using Browser Link in Visual Studio 2013
本文转自:https://docs.microsoft.com/en-us/aspnet/visual-studio/overview/2013/using-browser-link Browser ...