gpt4 book ai didi

mysql - 为什么我的 SQL 存储过程在没有结果时给出错误?

转载 作者:行者123 更新时间:2023-11-30 21:38:27 24 4
gpt4 key购买 nike

我正在尝试制作一个简单的存储过程,如果某个参数 (pFirstPosition) 是某个值,我会使用其他一些参数作为过滤器进行选择。 SELECT 仅在至少有一行时才起作用。问题不是在没有行时返回 null,而是返回错误。我将 MariaDB 与 phpMyAdmin 一起使用,我遇到的错误是

Static analysis:

1 errors were found during analysis.

Missing expression. (near "ON" at position 25)SQL query:

SET FOREIGN_KEY_CHECKS = ON;

MySQL said:

#2014 - Commands out of sync; you can't run this command now

这是我的存储过程:

BEGIN
IF pFirstPosition = 'Top' THEN
SELECT Leader,GameMode,Language.Name,MinRank,MaxRank from Lobby
inner join Lobby_Position on Lobby.LobbyPositionId =
Lobby_Position.LobbyPositionId
inner join Language on Lobby.LanguageId = Language.LanguageId
WHERE Lobby.MinRank <= pUserRank
AND Lobby.MaxRank >= pUserRank
AND Language.Name = pLanguage
AND GameMode = pGamemode;
End IF;
End

谢谢

最佳答案

“LANGUAGE”是一个保留字,所以用反引号引用它:

   inner join `Language` on Lobby.LanguageId = Language.LanguageId

关于mysql - 为什么我的 SQL 存储过程在没有结果时给出错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52864545/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com