如何使用单个 MySQL 选择语句在存储过程中设置两个变量?
mysqlmysqli database
为此,我们首先在 MySQL 中创建一个新表
mysql> create table useProcedure - > ( - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, - > FirstName varchar(20), - > LastName varchar(20) - > ); Query OK, 0 rows affected (0.65 sec)
使用 insert 命令在表中插入一些记录。
查询如下
mysql> insert into useProcedure(FirstName,LastName) values('Adam','Smith'); Query OK, 1 row affected (0.27 sec)
以下是您的存储过程,使用单个选择语句在存储过程中设置两个变量。创建存储过程的查询如下
mysql> DELIMITER // mysql> create procedure Sp_Demo() - > BEGIN - > declare one varchar(20); - > declare two varchar(20); - > select FirstName, LastName INTO one, two from useProcedure where id = 1; - > select one, two; - > END; - > // Query OK, 0 rows affected (0.26 sec) mysql> DELIMITER ;
使用 CALL 命令调用存储过程。
查询如下
mysql> call Sp_Demo();
以下是输出 −
+------+-------+ | one | two | +------+-------+ | Adam | Smith | +------+-------+ 1 row in set (0.00 sec) Query OK, 0 rows affected (0.01 sec)