41 lines
1016 B
Plaintext
41 lines
1016 B
Plaintext
DELIMITER //
|
|
|
|
CREATE OR REPLACE PROCEDURE sync_myfavor(
|
|
IN p_moduleid VARCHAR(100),
|
|
IN p_functiontag VARCHAR(100),
|
|
IN p_userid VARCHAR(100)
|
|
)
|
|
Build Date : 2023/11/01
|
|
|
|
Modify History
|
|
Item Who Date Modify Docs
|
|
==== ========== ========== ================================================
|
|
1 Michael 2023/11/01 Init
|
|
2 Michael 2025/07/20 改寫為 MariaDB 並最佳化(ChatGPT+DeepSeek)
|
|
*/
|
|
BEGIN
|
|
DECLARE v_count INT;
|
|
|
|
-- check if exists
|
|
SELECT COUNT(*) INTO v_count
|
|
FROM sys_myfavor
|
|
WHERE module = p_moduleid
|
|
AND functiontag = p_functiontag
|
|
AND userid = p_userid;
|
|
|
|
-- 已存在刪除,否則 update
|
|
IF v_count > 0 THEN
|
|
DELETE FROM sys_myfavor
|
|
WHERE module = p_moduleid
|
|
AND functiontag = p_functiontag
|
|
AND userid = p_userid;
|
|
ELSE
|
|
INSERT INTO sys_myfavor (module, functiontag, userid)
|
|
VALUES (p_moduleid, p_functiontag, p_userid);
|
|
END IF;
|
|
|
|
-- return
|
|
SELECT 0 AS code, 'ok' AS msg;
|
|
END //
|
|
|
|
DELIMITER ; |