oracle 请问一下,一张已经建好的表,怎样在其中一列上添加自增列???新手,求解!!!

如:表里有个UserID,现要求加自增,从1000开始,增加量为1.谢谢了,刚接触oracle,不怎么会。... 如:表里有个UserID,现要求加自增,从1000开始,增加量为1.谢谢了,刚接触oracle,不怎么会。 展开
 我来答
E30814075
推荐于2018-04-10 · 超过72用户采纳过TA的回答
知道小有建树答主
回答量:153
采纳率:66%
帮助的人:79.5万
展开全部
先建一个sequence:有按钮可以直接建,也可以sql建
DROP SEQUENCE _SEQUENCE;

CREATE SEQUENCE _SEQUENCE
START WITH 1000
MAXVALUE 99999999
MINVALUE 1
NOCYCLE
NOCACHE
ORDER;

再建一个trigger:
DROP TRIGGER _TRIGGER;

CREATE OR REPLACE TRIGGER _TRIGGER
BEFORE INSERT
ON tablename FOR EACH ROW
DECLARE
nextid NUMBER;
BEGIN
IF :new.UserID IS NULL OR :new.UserID = 0
THEN
SELECT _SEQUENCE.NEXTVAL INTO nextid FROM sys.DUAL;

:new.UserID := nextid;
END IF;
END _TRIGGER;
/
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式