小编Lee*_*Lee的帖子

MySQL/MariaDB 存储过程编译时有拼写错误

我只是问了一个类似的问题,但结果是因为 MySQL 列名不区分大小写,而我造成了歧义。我接受了给出的建议,并在所有参数前加上了 p。问题是,如果我输入拼写错误的参数值,SP 仍然可以编译,但在运行时会失败。我能做些什么吗?

下面是一个例子:

DELIMITER $$

USE `MobiFit_Dev` $$

DROP PROCEDURE IF EXISTS `User_Signup` $$

CREATE DEFINER = `root` @`localhost` PROCEDURE `User_Signup` (
    pEmail VARCHAR (250),
    pHashedPassword BINARY(60),
    pFirstName VARCHAR (100),
    pLastName VARCHAR (100),
    pGender ENUM ('Male', 'Female'),
    pDateOfBirth DATE,
    pHeight DECIMAL (3, 2),
    pCurrentWeight DECIMAL (4, 1) 
    -- CALL User_Signup('lee@gmail.com', 'password', 'Lee', 'Brooks', NULL, NULL, NULL, NULL);
    -- CALL User_Signup('lee@gmail.com', 'password', 'Lee', 'Brooks', 'Male', CURRENT_DATE(), 1.85, 101.3);
) 
BEGIN
    DECLARE vRoleId INT;

    SELECT 
        id INTO …
Run Code Online (Sandbox Code Playgroud)

mysql mariadb

3
推荐指数
1
解决办法
995
查看次数

标签 统计

mariadb ×1

mysql ×1