【问题标题】:mysql procedure error when creating创建时mysql程序错误
【发布时间】:2017-06-19 04:59:06
【问题描述】:

我无法创建程序。 MySQL 说:#1064 - 你的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以获取在 'set @pid=people_ids; 附近使用的正确语法; SELECT GROUP_CONCAT(id) INTO @ids FROM tbl_people W' 在第 3 行

delimiter //
create procedure my_coordinate(in people_ids varchar,out oids varchar(200))
  BEGIN
   SET @ids = null;
   set @pid=people_ids;
   SELECT GROUP_CONCAT( id)    INTO @ids
   FROM tbl_people 
   WHERE upper_bos_id = @pid ;

set oids= @ids;
IF @ids  then
  CALL my_coordinate(@ids);
END IF;
end//

【问题讨论】:

  • 在 varchar 字段中需要一个长度。另外,您真的希望该过程自己调用吗?

标签: mysql


【解决方案1】:

删除 1 行以不先将 @ids 显式设置为 null(未测试,因此尝试 2 或 3):

delimiter //
create procedure my_coordinate(in people_ids varchar,out oids varchar(200))
  BEGIN
   set @pid=people_ids;
   SELECT GROUP_CONCAT( id)    INTO @ids
   FROM tbl_people 
   WHERE upper_bos_id = @pid ;

set oids= @ids;
IF @ids  then
  CALL my_coordinate(@ids);
END IF;
end//

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-06
    • 2015-04-18
    • 2010-11-03
    • 1970-01-01
    • 2014-05-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多