DELIMITER //

CREATE OR REPLACE PROCEDURE `usp_GetErrorInfo_v2`()
/*
  傳回簡化錯誤訊息, 通常配合 DECLARE EXIT HANDLER FOR SQLEXCEPTION 中使用
  對應 MS-SQL 的 usp_GetErrorInfo_v2
*/
BEGIN
    -- 獲取錯誤資訊
    DECLARE v_err_msg TEXT;
    
    GET DIAGNOSTICS CONDITION 1 
    v_err_msg = MESSAGE_TEXT;
    
    -- 返回簡化格式
    SELECT 
        1 AS code,                       -- 預設錯誤代碼
        v_err_msg AS msg,
        0 AS recno;
END //

DELIMITER ;