我得到一个错误,说所有变量不能绑定
问题描述:
我尝试实现这个代码,我得到一个错误,所有变量或不绑定。对我来说什么是最好的解决方案。 我想实现这个代码来声明块外面的变量并将它们调用到程序中。我得到一个错误,说所有变量不能绑定
variable b_salary employees.salary%type;
declare
v_name employees.last_name%type;
v_salary employees.salary%type;
BEGIN
select last_name,salary
into v_name, :b_salary
from employees
where phone_number = '9856849658';
dbms_output.put_line ('EMP ' || V_name || ' earns ' || V_salary || ' monthly ');
dbms_output.put_line ('Hello Word') ;
END;
答
本声明未在SQL-PLUS允许:
variable b_salary employees.salary%type;
此外,如果您运行在SQL-Plus或SQL-Develoer这条线,你会得到与使用说明下面的错误消息,我不知道为什么你没有注意到它:
Usage: VAR[IABLE] [ <variable> [ NUMBER | CHAR | CHAR (n [CHAR|BYTE]) |
VARCHAR2 (n [CHAR|BYTE]) | NCHAR | NCHAR (n) |
NVARCHAR2 (n) | CLOB | NCLOB | BLOB | BFILE
REFCURSOR | BINARY_FLOAT | BINARY_DOUBLE ] ]
只能使用精确的类型名称,一个从上面的消息,employees.salary%type
这里不允许使用。
删除冒号':b_salary' – I3rutt
为什么要定义b_salary和v_salary?听起来就像你只需要v_salary ... – Boneist
请** [编辑] **您的问题,并添加您得到的**精确**错误消息。 ** [**]您的问题 - 请勿**在论坛中发布代码或其他信息。 –