【问题标题】:#1064 - You have an error in your SQL syntax fix this#1064 - 您的 SQL 语法有错误,请修复此问题
【发布时间】:2016-10-05 10:38:46
【问题描述】:

CREATE FUNCTION wowdiscu_root.CreateGroup(GroupName VARCHAR(50), GroupIcon TEXT, GroupDescription VARCHAR(130), GroupCreator INT)
  RETURNS int(11)
  DETERMINISTIC
BEGIN
  DECLARE groupID INT;
  INSERT INTO groups (name, icon, description) VALUES (GroupName, GroupIcon, GroupDescription);
  SET groupID = LAST_INSERT_ID();
  INSERT INTO group_members VALUES (groupID, GroupCreator);
  RETURN groupID;
END;

MySQL 说

1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 5 行的 '' 附近使用正确的语法

有人可以更正上面的 MySQL 代码吗?

【问题讨论】:

  • 您有delimiter 声明吗?

标签: php mysql


【解决方案1】:

您需要有一个分隔符

DELIMITER $ -- set delimiter to $
CREATE FUNCTION wowdiscu_root.CreateGroup(GroupName VARCHAR(50), GroupIcon TEXT, GroupDescription VARCHAR(130), GroupCreator INT)
  RETURNS int(11)
  DETERMINISTIC
BEGIN
  DECLARE groupID INT;
  INSERT INTO groups (name, icon, description) VALUES (GroupName, GroupIcon, GroupDescription);
  SET groupID = LAST_INSERT_ID();
  INSERT INTO group_members VALUES (groupID, GroupCreator);
  RETURN groupID;
END$

DELIMITER ; -- set delimiter back to ;

【讨论】:

    猜你喜欢
    • 2014-12-27
    • 2020-09-16
    • 1970-01-01
    • 2012-07-21
    • 2012-05-10
    • 2016-10-30
    • 2017-07-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多