如何使Oracle触发器主键自动增长

1,创建sequence:

  create sequence SEQ_SM_USER

  minvalue 1

  maxvalue 999999999999999999999999999

  start with 1

  increment by 1

  cache 20;

  2,创建触发器:

  create or replace trigger tg_sm_user

  before insert on sm_user

  referencing old as oldval

  new as newval

  for each row

  begin

  select seq_sm_user.nextval into :newval.pk_user from dual;

  end;

时间: 2024-09-20 18:52:10

如何使Oracle触发器主键自动增长的相关文章

深入Mysql,SqlServer,Oracle主键自动增长的设置详解_Mysql

1.把主键定义为自动增长标识符类型MySql在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值.例如: 复制代码 代码如下: create table customers(id int auto_increment primary key not null, name varchar(15));insert into customers(name) values("name1"),("name2");select id fr

在Mysql,SqlServer及Oracle中设置主键自动增长

1.把主键定义为自动增长标识符类型 在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值.例如: create table customers(id int auto_increment primary key not null, name varchar(15)); insert into customers(name) values("name1"),("name2"); select id from customers;

hibernate annotation 怎么申明主键自动增长?sqlserver数据库

问题描述 如题 解决方案 解决方案二:<idname="id"type="long"><columnname="id"></column><generatorclass="increment"></generator></id>解决方案三:如果是采用注释方式呢?怎么注释?解决方案四:pirvateLongid;@Id@GeneratedValue(stra

oracle的主键约束添加删除

oracle的主键约束添加删除 1.创建表的同时创建主键约束一.无命名create table accounts (accounts_number number primary key,accounts_balance number);二.有命名 create table accounts (accounts_number number primary key,accounts_balance number,constraint yy primary key(accounts_number));

mybatis数据表(mysql)的主键非自增长,如何插入数据(需插入主键)实现主键自增长?

问题描述 mybatis数据表(mysql)的主键非自增长,如何插入数据(需插入主键)实现主键自增长? 举例来说就是有表person,person有id(mysql数据库,主键,非自增),和name,pswd三个字段.如果是自增的情况,我们通常是这样处理 insert into person(name,pswd) values(#{name},#{pswd}) 这种情况不许要插入主键,因为person表主键是自增长的.但如果主键不是增长的情况呢?如何处理.主键不是自增长就应该必须插入主键. 在步

sql语句查询数据库中的表名/列名/主键/自动增长值实例_MsSql

sql语句查询数据库中的表名/列名/主键/自动增长值 ----查询数据库中用户创建的表 ----jsj01 为数据库名 select name tablename from jsj01..sysobjects where type='U' and name not in ('dtproperties') --查询表里的字段信息 ---docs为表名 ---- select * from syscolumns where id = object_id('docs') ----查询数据库中所有类型

oracle联合主键问题,2个主键确定数据

问题描述 oracle联合主键问题,2个主键确定数据 #机构信息表T_GX_JGXX = Table('T_GX_JGXX'con.metadataColumn('YXJGDM' String(30) nullable=Falsedoc='银行机构代码')Column('NBJGH' String(30) nullable=Falseprimary_key=Truedoc=""内部机构号"" )Column('YXJGMC' String(200) nullable

spring-得到主键自动增长值KeyHolder

问题描述 得到主键自动增长值KeyHolder 为什么我的代码执行后KeyHolder的值还是为空呢? `public class UserDaoImpl implements IUserDao { private NamedParameterJdbcTemplate simpleJdbcTemplate = new NamedParameterJdbcTemplate (JDBCUtils4.getDataSource()); @Override public boolean addUser(

oracle删除主键查看主键约束及创建联合主键_oracle

1,主键的删除 ALTER TABLE TABLENAME DROP PRIMARY_KEY 执行上面的SQL可以删除主键:如果不成功可以用 ALTER TABLE TABLENAME DROP CONSTRAINTS COLUMN CASCADE; --删除约束 ALTER TABLE TABLENAME DISABLE PRIMARY_COLUMN ; --设置被设置为主键的列为无效 DROP INDEX INDEX_NAME; --删除主键索引 2,查看主键约束 SELECT * FROM