PLSQL 错误 PLS-00201:必须声明标识符
PLSQL error PLS-00201: identifier must be declared
我正在处理游戏用户数据库。我正在尝试创建一个函数,其中 returns 居住在某个州的用户数量(执行该函数时请求)。所以:
CREATE OR REPLACE FUNCTION userNumber(v_state users.state%type)
RETURN number
AS
result number(10);
BEGIN
SELECT COUNT(*) INTO result
FROM users
WHERE users.state= v_state;
RETURN result;
END;
/
当我尝试使用它时,(例如使用州名称佛罗里达州)它向我显示错误:PLS-00201:必须声明标识符 'FLORIDA'。
declare
v_state users.state%type:=&state;
v_result number(10);
begin
v_result := userNumber(v_state);
dbms_output.put_line('The users number of the state '|| v_state || ' is ' || v_result);
end;
/
如有任何帮助,我将不胜感激。
"Florida" 是一个字符串,因此您必须将替换变量括在单引号中:
v_state users.state%type := '&state';
我正在处理游戏用户数据库。我正在尝试创建一个函数,其中 returns 居住在某个州的用户数量(执行该函数时请求)。所以:
CREATE OR REPLACE FUNCTION userNumber(v_state users.state%type)
RETURN number
AS
result number(10);
BEGIN
SELECT COUNT(*) INTO result
FROM users
WHERE users.state= v_state;
RETURN result;
END;
/
当我尝试使用它时,(例如使用州名称佛罗里达州)它向我显示错误:PLS-00201:必须声明标识符 'FLORIDA'。
declare
v_state users.state%type:=&state;
v_result number(10);
begin
v_result := userNumber(v_state);
dbms_output.put_line('The users number of the state '|| v_state || ' is ' || v_result);
end;
/
如有任何帮助,我将不胜感激。
"Florida" 是一个字符串,因此您必须将替换变量括在单引号中:
v_state users.state%type := '&state';