如何用触发器给Oracle中的表实现自增字段

我知道是用sequences.nextval可以实现自增字段,我想用触发器和sequences实现它的自动递增就比如原来我要这样做insertintotable(id,n... 我知道是用sequences.nextval可以实现自增字段,我想用触发器和sequences实现它的自动递增就比如原来我要这样做insert into table(id,name,age) values(sequences.nextval,'jack',18);才能实现自增,现在我想这样就能自增:
insert into table(id,name,age) values('jack',18);
就像mysql里面的自增一样不用手写什么,我记得用触发器可以实现这个功能,但是忘了怎么弄,请高人指点一番,多谢了!!!通过客户端创建的方法或者代码都可以
展开
 我来答
ztz19911008
2011-12-05 · 超过10用户采纳过TA的回答
知道答主
回答量:18
采纳率:0%
帮助的人:26.6万
展开全部
CREATE OR REPLACE TRIGGER scott.trigProduct BEFORE insert ON scott.tblProduct FOR EACH ROW
BEGIN
select seqProduct.nextval into:new.ID from sys.dual;
END;
/
alter trigger scott.trigProduct enable;

当然要先创建表和sequence
追问
错误ORA-04098 触发器'scott.tblProduct'无效且未通过重新验证
追答
呃...你不会还没解锁scott账户吧?
我这里的scott都是同一个账户的名字,你可以对应改掉或者直接去掉都可以的...另外有问题的话可以Hi我
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式