永发信息网

plsql怎么给主键自增

答案:2  悬赏:70  手机版
解决时间 2021-03-17 04:56
plsql怎么给主键自增
最佳答案
oracle没有ORACLE自增字段这样的功能,但是通过触发器(trigger)和序列(sequence)可以实现。
create table t_client (id number(4) primary key,
pid number(4) not null,
name varchar2(30) not null,
client_id varchar2(10),
client_level char(3),
bank_acct_no varchar2(30),
contact_tel varchar2(30),
address varchar2(30),
zip_code varchar2(10),
is_leaf char(1) default 'y' check (is_leaf in('y','n')),
is_client char(1) default 'n' check (is_client in('y','n')
));

假设关键字段为id,建一个序列,代码为:
create sequence seq_t_client_id
minvalue 1
maxvalue 99999999
start with 1
increment by 1
nocache
order;
建解发器代码为:
CREATE OR REPLACe TRIGGER trg_t_client_id
BEFORE INSERT ON t_client
FOR EACH ROW
BEGIN
SELECT seq_t_client_id.nextval INTO :new.id FROM dual;
END;
/
全部回答
oracle没有oracle自增字段这样的功能,但是通过触发器(trigger)和序列(sequence)可以实现。  create table t_client (id number(4) primary key,  pid number(4) not null,  name varchar2(30) not null,  client_id varchar2(10),  client_level char(3),  bank_acct_no varchar2(30),  contact_tel  varchar2(30),  address    varchar2(30),  zip_code varchar2(10),  is_leaf char(1) default 'y' check (is_leaf in('y','n')),  is_client char(1) default 'n' check (is_client in('y','n')  ));   假设关键字段为id,建一个序列,代码为:  create sequence seq_t_client_id  minvalue 1  maxvalue 99999999  start with 1  increment by 1  nocache  order;  建解发器代码为:  create or replace trigger trg_t_client_id  before insert on t_client  for each row  begin select  seq_t_client_id.nextval into :new.id from dual;  end;  /
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
炒鸡蛋时蛋液和油的比例是多少
双鱼座的冷暴力意味着什么
微信怎么设置先付款在通过验证呢
熊猫le55f88s-ud采用什么背光
襄阳到达州有什么车
联想B4400笔记本无线网卡问题。
笔记本电脑如何恢复出厂设置
厨房5s管理冰箱外贴大全
上官坑怎么去啊,有知道地址的么
代理服务器是什么?什么意思?
射手座女生2017年高考运气
在java中为什么有时用void方法,方法不就是要
一月内做了3次x线对人体有害吗
在香港带笔记本回深圳怎样不被查 查到了怎么
报关教材真假
推荐资讯
丘比特婚介在哪里啊,我有事要去这个地方
没生孩子的女人离婚会后悔吗
嘉洲旅馆我想知道这个在什么地方
在电脑上打字不小心按了home,要怎么返回?
2014年考研。西南财经大学。会计学院,会计学
3x240平方的电缆的直径是多少啊?谢谢
写鲁迅的作文 400字的!大家帮帮忙啊!非常急
you used to play__soccer,and I played__pia
自己买个后视镜行车记录仪去维修店装需要多少
求大神解答,在iOS系统里,可以用支付宝吗
在百度推广上加的微信是骗人的怎么办
网上写着手工活外发加工真的有吗?会不会是骗
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?