我试图执行这个pl/mysql来得到3个值作为回报,但是
DELIMITER //
CREATE PROCEDURE p_login(user VARCHAR(16),
pass VARCHAR(30),
OUT Tipo_usuarios VARCHAR(1),
OUT estado_usuarios VARCHAR(1),
OUT idUsuarios INT(11))
BEGIN
DECLARE s_tipo, s_estado VARCHAR(1);
DECLARE s_id INT(11);
SELECT Tipo_usuarios, estado_usuarios, idUsuarios
INTO s_tipo, s_estado, s_id
FROM USUARIOS
WHERE
user_usuarios = user AND
pass_usuarios = pass;
IF s_id IS NOT NULL THEN
SET Tipo_usuarios = s_tipo;
SET estado_usuarios = s_estado;
SET idUsuarios = s_id;
INSERT INTO BITACORA_LOGIN (usuario_bitacora,
fecha_bitacora)
VALUES (s_id, SYSDATE(), USER());
COMMIT;
END IF;
END//
DELIMITER ;
当我执行
CALL p_login('user1', 597293, @a, @b, @c);
SELECT @a, @b, @c;
我总是得到空值,你知道如何执行,或者我的pl/mysql有什么不好的地方吗?
暂无答案!
目前还没有任何答案,快来回答吧!