2 mysql variables stored-procedures call declare
我有下一个存储过程:
DELIMITER $$
CREATE DEFINER=`root`@`localhost` PROCEDURE `getUserIdByLogin`(userId VARCHAR(255))
BEGIN
SELECT id FROM `userdata` WHERE login = userId;
END
Run Code Online (Sandbox Code Playgroud)
我想@tmp为eg 声明一个新变量,并为此做一个smth:
SET @tmpValue = CALL getUserIdByLogin("someLogin");
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
如果只是打电话:
CALL getUserIdByLogin("someLogin");
Run Code Online (Sandbox Code Playgroud)
然后我会看到结果,但我需要在变量(数组类型)中声明结果.
我该怎么做?
谢谢!
CREATE DEFINER=`root`@`localhost` PROCEDURE `getUserIdByLogin`(
userId VARCHAR(255),
OUT idout int
)
BEGIN
SELECT id INTO idout FROM `userdata` WHERE login = userId;
END
Run Code Online (Sandbox Code Playgroud)
然后
SET @id = 0;
CALL getUserIdByLogin("someLogin", @id);
SELECT @id;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8208 次 |
| 最近记录: |