MySQL报错:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server

报错内容:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '

在这里我在MySQL存储过程

原先代码:

DELIMITER $
CREATE PROCEDURE closemoney(
-- 修改用户金额,积分,用户id数据
IN mon INT,IN yintegral DOUBLE,IN userid DOUBLE,
-- 修改商家库存扣除数量数据
IN gmon INT,IN marchantid INT,IN size VARCHAR,
-- 订单表储存
IN dtime DATETIME,IN dmon DOUBLE,IN clieid INT,IN storeid INT,IN addrid INT,
-- 交易记录储存
IN integral VARCHAR,IN zmon DOUBLE)
BEGIN
    -- 扣除用户的金额,增加用户积分,上传:扣除金额,积分,用户id
    UPDATE customer SET cust_balance=(cust_balance-mon),cust_integral =yintegral WHERE cust_id=userid;
    -- 商家的库存扣除数量,上传:购买数量,商品id,商品尺码
    UPDATE tab_goodsdetail SET goods_stock=(goods_stock-gmon) WHERE goods_id=marchantid AND goods_size=size;
    -- 订单表储存。上传:下单时间,下单金额,顾客id,店铺id,地址id
    INSERT INTO tab_order VALUES (NULL,dtime,dmon,NULL,clieid,storeid ,addrid);
    -- 交易记录储存。上传:交易类型,交易金额,顾客id=上一个条件的顾客id
    INSERT INTO tab_cashlog VALUES (NULL,integral ,zmon,clieid);
END $

后面经过研究发现是我传值时varchar未给长度

修改后的代码

DELIMITER $
CREATE PROCEDURE closemoney(
-- 修改用户金额,积分,用户id数据
IN mon INT,IN yintegral DOUBLE,IN userid DOUBLE,
-- 修改商家库存扣除数量数据
IN gmon INT,IN marchantid INT,IN size VARCHAR(10),
-- 订单表储存
IN dtime DATETIME,IN dmon DOUBLE,IN clieid INT,IN storeid INT,IN addrid INT,
-- 交易记录储存
IN integral VARCHAR(50),IN zmon DOUBLE)
BEGIN
    -- 扣除用户的金额,增加用户积分,上传:扣除金额,积分,用户id
    UPDATE customer SET cust_balance=(cust_balance-mon),cust_integral =yintegral WHERE cust_id=userid;
    -- 商家的库存扣除数量,上传:购买数量,商品id,商品尺码
    UPDATE tab_goodsdetail SET goods_stock=(goods_stock-gmon) WHERE goods_id=marchantid AND goods_size=size;
    -- 订单表储存。上传:下单时间,下单金额,顾客id,店铺id,地址id
    INSERT INTO tab_order VALUES (NULL,dtime,dmon,NULL,clieid,storeid ,addrid);
    -- 交易记录储存。上传:交易类型,交易金额,顾客id=上一个条件的顾客id
    INSERT INTO tab_cashlog VALUES (NULL,integral ,zmon,clieid);
END $

将varchar给上相应的长度就创建成功了(为了保险起见,传递的值的类型建议和数据库列名的类型一致),希望对一些人能有帮助

猜你喜欢

转载自blog.csdn.net/qq_53590046/article/details/124767388