用户定义的变量/gh> 存储程序中的变量
在@lemon的帮助下,我用一些参数做了一个过程,我需要将它们包含在WHERE
子句中。我卡住了,不知道问题是在我的逻辑还是只是在语法。
没有参数的过程的结果
<表类>
ID
item_id
名称
姓
添加
addition2
addition3
问题1
问题2
问题3
数量
tbody><<tr>1 1 格拉迪斯 华纳 热狗 比萨 - 梅奥 辣椒 - 25 22 哈里森td> 比萨 汉堡 hod-dog 辣椒 梅奥 - 25 表类>
过程参数不使用@
-前缀。同样,你最好使用declare
来声明局部变量,而不是使用用户定义的参数。
对于SQL本身,避免使用动态SQL。
CREATE PROCEDURE `ReportAdditionals`(
IN `@is_payment` TINYINT(1), -- This is LOCAL VARIABLE with the name @is_payment
...
SET @is_payment_param = ... -- This is USER DEFINED variable with then name is_payment
...
其他变量也是同样的问题。
研究:<<ul>