我有一个脚本,它只是连接到sql * plus中的表,并在表中插入一行。
它发出如下错误:
SP2-0552: Bind variable "BIND" not declared
我无法确切地知道它试图插入的查询中的绑定变量是什么。
答案 0 :(得分:4)
您正在尝试运行这样的SQL:
SELECT 1 FROM DUAL WHERE :BIND = 1;
SQL * Plus将:BIND
标识为绑定变量,但您尚未在会话中声明一个。要声明绑定变量,请使用VAR(IABLE)
命令。
VAR BIND NUMBER
然后,您可以为变量赋值。
EXEC :BIND := 1
再次运行select
以确认现在已设置绑定变量。请注意,您还可以使用此变量来保存单行查询的结果。
SELECT 1 INTO :BIND FROM DUAL;