我正在尝试创建一个允许用户租车的过程,我的数据库中有许多表,我使用的是“car”和“customer”。我希望用户能够插入一个汽车登记和他们的手机号码,从这里,一个搜索将从'汽车'表,看看他们输入的汽车登记是否匹配任何存储在'汽车'表。这是我目前所拥有的-

CREATE PROCEDURE new_loan

(
IN  `@car_reg` VARCHAR(10) ,
IN  `@mobile_no` int)


BEGIN

        SELECT  carReg
          FROM car
          WHERE (carReg = car_reg);
END$$
DELIMITER ;

即使输入的数据与car表中的数据匹配,它也只会显示一个空的car_reg。
谢谢

最佳答案

您需要在变量名中更加一致。

`@car_reg` != car_reg

这样的做法应该管用:
DELIMITER $$

CREATE PROCEDURE new_loan
(
IN  v_car_reg VARCHAR(10) ,
IN  v_mobile_no int)
BEGIN
        SELECT  carReg
          FROM car
          WHERE (carReg = v_car_reg);
END$$

DELIMITER ;

07-25 21:02