【问题标题】:return mysql error msg from function for insert statement从插入语句的函数返回mysql错误消息
【发布时间】:2013-09-28 06:22:24
【问题描述】:

我在 MySQL 中有以下功能。 如何使函数在成功插入行时返回GUID,如果“插入”出现问题,则返回 MySQL 错误消息。

DELIMITER $$
CREATE DEFINER=`root`@`localhost` FUNCTION `fnInsertBusinessInfo`(
    BU_NAME VARCHAR(300),
    BU_PHONE VARCHAR(20),
    BU_TYPE VARCHAR(50) 
) RETURNS varchar(100) CHARSET latin1
BEGIN
DECLARE
    BU_ID VARCHAR(100);
    SET BU_ID := (SELECT UUID());

    INSERT INTO tb_business_info (BU_ID,BU_NAME,BU_PHONE,BU_TYPE) values (BU_ID,BU_NAME,BU_PHONE,BU_TYPE);

RETURN BU_ID;
END

我已设法返回id,但如何在插入不成功时返回错误消息?

【问题讨论】:

    标签: mysql sql user-defined-functions


    【解决方案1】:
    DECLARE
        BU_ID VARCHAR(100);
            --modify SET BU_ID := (SELECT UUID());
        SELECT UUID() into BU_ID;
    
    
        INSERT INTO tb_business_info (BU_ID,BU_NAME,BU_PHONE,BU_TYPE) values (BU_ID,BU_NAME,BU_PHONE,BU_TYPE);
    
    
    
    
    RETURN BU_ID;
    END
    

    【讨论】:

    • mysql不返回关键字,可以使用存储过程OUT参数
    • 我认为你无法理解我的问题
    猜你喜欢
    • 2020-02-07
    • 1970-01-01
    • 1970-01-01
    • 2019-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-06
    • 1970-01-01
    相关资源
    最近更新 更多