永发信息网

PLSQL中已经建表,怎样设置ID自动增长

答案:2  悬赏:60  手机版
解决时间 2021-03-12 03:18
PLSQL中已经建表,怎样设置ID自动增长
最佳答案
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;
全部回答
plsql是oracle数据库吧,oracle不同于mysql,没有自增类型。不过可以通过创建触发器和序列来实现这一功能。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
某建设项目投资总额为P,项目寿命期为n年,当
古代“六乐”“五射”“五驭”“九数”分别是
中国高铁强在哪里??
鲁台在哪里啊,我有事要去这个地方
学生的数学素养有哪些
质量相同的烃比较,耗氧量的多少取决于什么?
在数轴上,点A(表示整数a)再原点的左侧,点B(表
为什么有些地方叫长辈是大大?大大是什么意思
树木所占百分比情况如下:杨树占30%柳树占20%
诺基亚1020如何下载qq安全中心
请问《奇怪的运动》第二部更新到第几章了?
温莎士洗衣地址在什么地方,想过去办事
女生向男生表白的感动情话
【edge怎么读】s6 edge+怎么读
液晶电脑显示屏刷新率最高75,但是我刷新率有
推荐资讯
开封有免费法律援助单位吗
春节从北京开车回黄石大概需要多长时间
轩逸 和 蓝鸟 哪个好?
汕尾拿绿标要什么
1t/h锅炉蒸发量 为什么等于60万大卡
用同一个手持设备登陆QQ为什么IP地址和登陆地
班龙服饰在什么地方啊,我要过去处理事情
删掉的手机号怎么找回
骑砍战团招什么领主
怎么判断是市电断了还是开关断了
鑫威力台吧地址在什么地方,想过去办事
菠菜火腿的做法步骤图,菠菜火腿怎么做好吃
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?