2

ある列の値が、同じINSERTステートメント内の別の列のシーケンス nextval によって生成された値と同じである単一のテーブルに行を挿入したい:

INSERT INTO PRO.GTRANS_DEFS(IN_USER, GTRANS_NUM, SAME_VALUE) 
VALUES('JOHNT',SQ_GTRANS_NUM.nextval,XXX);

つまり、 がforによって生成されたものと同じ値を取るINSERTように、XXX を置き換えるにはどうすればよいですか?SAME_VALUESQ_GTRANS_NUM.nextvalGTRANS_NUM

XXX の代わりに他の列 'GTRANS_NUM' を参照しようとしましたが、許可されません (Oracle 8i)。

4

1 に答える 1

4

動作はわかりませんが、試してみる価値はあります:

INSERT INTO PRO.GTRANS_DEFS(IN_USER, GTRANS_NUM, SAME_VALUE) 
VALUES('JOHNT',SQ_GTRANS_NUM.nextval,SQ_GTRANS_NUM.CURRVAL);
于 2013-07-08T10:11:01.583 に答える