从使用 OLEDB 的 ASP.NET 2.0 (VB) 应用程序使用 Oracle 9i 数据库。有没有办法让插入语句返回一个值?我有一个序列设置为在条目进入数据库时对其进行编号,但是我需要在插入后返回该值,以便我可以对刚刚在代码隐藏 VB 中输入的集合进行一些操作。
最佳答案
一些可能性:
1) 使用 RETURNING 子句:
INSERT INTO emp (empno, ename) VALUES (emp_seq.NEXTVAL, 'ANDREWS')
RETURNING empno INTO :variable;
2) 使用序列 CURRVAL:
INSERT INTO emp (empno, ename) VALUES (emp_seq.NEXTVAL, 'ANDREWS');
SELECT emp_seq.CURRVAL INTO :variable FROM DUAL;
CURRVAL 返回 session 生成的最后一个序列值。
关于vb.net - 从插入语句返回一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/270695/