MYSQL存储过程传入传出

MYSQL储存过程传入传出

DELIMITER //

CREATE PROCEDURE cc(IN OrderID char,IN MysqlP_Price decimal,IN PayMode INT,OUT OrderStatus int)

BEGIN

UPDATE OrderList

SET OrderStatus=’3′,

ProPrice=MysqlP_Price

WHERE OrderID=OrderID and OrderStatus=’0′ AND PayMode=PayMode;

  SELECT OrderStatus into OrderStatus FROM OrderList WHERE OrderID=OrderID;

END//

call cc(‘20120507000953605783′,’99.00′,’3’,@OrderStatus);

结果

ERROR 1172(42000) result consisited of more than one row

请问一下

我需要先传值进去,再更新表,最后将订单的当前状态值(Orderstatus)返回出来,请问该如何来写



CREATE PROCEDURE cc(IN OrderID char,IN MysqlP_Price decimal,IN PayMode INT,OUT OrderStatus int)

参数名改下,不要跟表的字段名一样,再试下




SELECT OrderStatus into OrderStatus FROM OrderList WHERE OrderID=OrderID这个结果不唯一?

SELECT OrderStatus into OrderStatus FROM OrderList WHERE OrderID=OrderID limit 1;这样




desc OrderList

贴出来看一下表结构。

MYSQL存储过程传入传出

相关文章:

  • 搬瓦工CentOS系统修改 SSH 默认端口的方法
  • 如何减少服务器停机时间?减少服务器停机时间的6种方法
  • 30秒演示如何更改VPS云服务器的DNS服务器设置。
  • 2024最后一个完整的说明宝塔面板命令大全
  • MySQL 8.0 (压缩包版)安装教程
  • MySQL 8.0比MySQL 5.7快了多少,优点是什么
  • 你感兴趣的文章:

    标签云:

    亚洲高清电影在线, 免费高清电影, 八戒影院夜间, 八戒电影最新大片, 出轨在线电影, 午夜电影院, 在线影院a1166, 在线电影院, 在线观看美剧下载, 日本爱情电影, 日韩高清电影在线, 电影天堂网, 直播盒子app, 聚合直播, 高清美剧, 高清美剧在线观看 EhViewer-E站, E站, E站绿色版, qqmulu.com, qq目录网, qq网站目录,