如何在mysql存储过程中声明变量(本地的,用户定义的)?
我正在mysql中创建存储过程。我声明了一些变量,但出现了错误。我不知道这个问题 错误是 “Declare”附近的synstax不正确” MySQL程序的语句顺序非常具体如何在mysql存储过程中声明变量(本地的,用户定义的)?,mysql,stored-procedures,mariadb,Mysql,Stored Procedures,Mariadb,我正在mysql中创建存储过程。我声明了一些变量,但出现了错误。我不知道这个问题 错误是 “Declare”附近的synstax不正确” MySQL程序的语句顺序非常具体 DECLARE语句必须放在第一位 还有DECLARE语句的顺序。例如,任何声明。。。处理程序语句必须位于变量声明之后 如果不清楚的话。。。MySQL正在为DECLARE语句返回一个错误,因为它在SET语句之后无效。MoveSET事务隔离级别READ UNCOMMITTED在声明之后。谢谢你的回答!!^^很好的一天!谢谢你的回
DECLARE
语句必须放在第一位
还有DECLARE
语句的顺序。例如,任何声明。。。处理程序
语句必须位于变量声明之后
如果不清楚的话。。。MySQL正在为
DECLARE
语句返回一个错误,因为它在SET
语句之后无效。MoveSET事务隔离级别READ UNCOMMITTED代码>在声明之后。谢谢你的回答!!^^很好的一天!谢谢你的回答!!你好^^
CREATE PROCEDURE SP_APPDOCLISTSIGNBOXREAD_GET(
P_SESSIONID VARCHAR(256),
P_EMPID VARCHAR(20),
P_FORMSEQ VARCHAR(5)
)
BEGIN
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
DECLARE V_DRAFTDEPT VARCHAR(20); -- ***This line is error.***
DECLARE V_ADMINCOUNT INT;
SET @V_STRSQL = ''; -- Dynamic query variable
SET @V_STRWHERE = ''; -- Dynamic query variable
SET @V_STRPARAM = ''; -- Dynamic query variable
SET V_DRAFTDEPT = '';
SET V_ADMINCOUNT = 0;
SELECT DEPTCODE INTO V_DRAFTDEPT
FROM TBEMPLOYEE
WHERE EMPID = P_EMPID;
END