当前位置:数据库 > Oracle >>

怎样直接在oracle 10g里把主键设置为自增 不用写代码吧?

追问:我的表已经建了 之前用是的ID自动生成器 现在要把主键换成自动增一,不用生成器了,可不可以不删掉表里的数据,直接修改?
答案:需要使用“序列”+“触发器”来实现,需要写触发器和建序列 

给你个例子:
create table lt_users(
id number(11) not null PRIMARY KEY,
username varchar2(30) default '',
userpwd varchar2(32) default ''
)

建立用户表users id自动增长列:
create sequence users_seq 
minvalue 1 
nomaxvalue
start with 1 
increment by 1 
cache 30 
order

建立触发器:
create or replace trigger users_sysrole_id
before insert on lt_users
for each row
begin
select users_seq.nextval into :new.id from dual;
end;
其他:逃不掉代码的 

上一个:oracle配置EM失败
下一个:oracle 10g 客户端,win7下使用的。请大侠告诉。高分!我的版本是10.2..0

Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,