【发布时间】:2014-06-08 19:39:19
【问题描述】:
我在下面有这个存储过程,如果我的 PostId 是整数字段,它就可以工作 我将 postIdList 作为逗号分隔的字符串 '1,2,3,4' 发送... 但如果我将我的 PostId 更改为 GUID(char(36) 它对我不起作用。 它给了我一个语法错误说
"错误代码:1064。您的 SQL 语法有错误;请检查 与您的 MySQL 服务器版本相对应的手册 在第 1 行的“2d9d3ebc-6c9f-467a-8181-8a38891756b)”附近使用的语法
CREATE DEFINER=`root`@`%` PROCEDURE `GetComments`(
IN postIdList TEXT
)
BEGIN
set @sql = CONCAT('select * from PostComment where PostId in (', postIdList, ') ');
PREPARE q FROM @sql;
execute q;
END$$
我就是这样称呼它的 调用 GetComments( 'fff78ee0-396b-4300-952b-eee72d65261a,fff517dc-a7b7-441e-85bb-b5134828c0c9');
任何想法如何解决这个问题?
【问题讨论】:
标签: mysql sql database stored-procedures