【问题标题】:Incorrect number of arguments for PROCEDURE expected 1, got 2PROCEDURE 的参数数量不正确,预期为 1,得到 2
【发布时间】:2014-01-20 08:51:07
【问题描述】:
DELIMITER //
CREATE PROCEDURE Equipment(IN id int(11))
    BEGIN
SELECT  * FROM  equip a,    Txn_code b
WHERE   a.id = b.id AND a.id in(id);
    END //
DELIMITER 


call equipment(1000001109,1000001040)

如果我调用上述程序,我得到一个错误...请帮助我

错误 1318 PROCEDURE 的参数数量不正确;预期 1,得到 2

【问题讨论】:

    标签: mysql stored-procedures


    【解决方案1】:

    您的程序只定义了一个参数“id”。

    所以你只需要一个参数来调用它 --> call equipment(1000001109)

    这将解决调用您的过程,...但是您的 SELECT 不会执行您想要的操作。

    请参考这个类似的问题,该问题讨论了存储过程调用中参数数量可变的问题(解决方案是不平凡的 AFAIK):

    MySQL Stored Procedure with variable argument list

    【讨论】:

    • 嗨,我知道当我调用设备(1000001109)它的工作时,我的程序只定义了一个参数“id”。我有一个表设备,它有超过 10,000 条记录..我想从该表中查看选择的 4 或 5 条记录,为此我不想为此编写选择查询,所以我需要程序来减少我的时间成本.. .
    【解决方案2】:

    你尝试向程序发送 2 个参数,但在声明中她只得到一个

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-20
      • 2021-11-08
      • 2022-08-24
      • 1970-01-01
      相关资源
      最近更新 更多