我需要向用户询问变量,在SELECT
语句中使用该变量,然后在INSERT
语句中使用该变量。现在我只是试图使用INSERT
的变量来工作:
var num NUMBER(10)
exec num := &ExpNum
INSERT INTO ExpDet
VALUES(num, &LineNum, &Descrip, &Amt, &HCode, &SubCode)
当我运行时,我收到错误说
未声明绑定变量'num'。
我在这里有正确的想法,还是我需要完全使用其他方法?
答案 0 :(得分:0)
一个工作示例:
SQL> create table expdet
2 (num number,
3 linenum number,
4 descrip varchar2(20),
5 amt number,
6 hcode number,
7 subcode number);
Table created.
SQL> var num number
SQL> exec :num := &expnum
Enter value for expnum: 100
PL/SQL procedure successfully completed.
SQL> insert into expdet values
2 (:num, &linenum, &descrip, &amt, &hcode, &subcode);
Enter value for linenum: 1
Enter value for descrip: 'a'
Enter value for amt: 1
Enter value for hcode: 1
Enter value for subcode: 1
old 2: (:num, &linenum, &descrip, &amt, &hcode, &subcode)
new 2: (:num, 1, 'a', 1, 1, 1)
1 row created.
SQL>