我是MQSQL的新手,我一直在使用MSSQL,因此对我来说语法具有挑战性。我收到这个错误
#1064-您的SQL语法有误; ...在'declare @side LONGTEXT附近使用正确的语法;
声明@post BIGINT(20)默认0;
@side ='7082';
在第3行**
但是该窗口在select语句旁边还有一个红色的大X。
我已经仔细检查了变量Meta_Value的数据类型是LONGTEXT,而post_id是BIGINT(20)
DROP PROCEDURE IF EXISTS DailyDishData()
DELIMITER //
CREATE PROCEDURE DailyDishData()
declare @side LONGTEXT;
declare @post BIGINT(20) DEFAULT 0;
@side = '7082';
BEGIN
select @post = post_id from `wp_dfh0payzs9_postmeta` where meta_key = 'ftrecipe_id' and meta_value = @side;
END
DELIMITER ;
最佳答案
您忘记/放错了过程中的BEGIN
和END
关键字
DELIMITER //
DROP PROCEDURE IF EXISTS DailyDishData //
CREATE PROCEDURE DailyDishData()
BEGIN
declare @side LONGTEXT;
declare @post BIGINT(20) DEFAULT 0;
set @side = '7082';
select @post = post_id
from `wp_dfh0payzs9_postmeta`
where meta_key = 'ftrecipe_id' and meta_value = @side;
END
//
DELIMITER ;
忽略以下事实:在程序中,硬编码数字没有多大意义,并且您似乎没有使用
@post
变量关于mysql - 使用MYSQL创建存储过程时遇到问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44854012/