今天向mysql導入存儲過程的時候報錯,錯誤如下:
you *might* want to use the less safe log_bin_trust_function_creators variable
處理這個問題,只需要進入mysql,然後輸入:
解決辦法
在my.ini 裡搜索[mysqld]
直接在下邊加一句話:
代碼如下 復制代碼log-bin-trust-function-creators=1
或直接使用
代碼如下 復制代碼 mysql> SET GLOBAL log_bin_trust_function_creators = 1;
退出,重新導入存儲過程,成功
如果你不是出現上面問題,可能碰到的是此類問題在導入存儲過程時經常遇見下列DECLARE報錯的問題:
Error Code : 1064
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 3
(0 ms taken)
具體原因可以查看mysql的官方手冊
添加了delimiter後就不報了
代碼如下 復制代碼delimiter //
CREATE PROCEDURE p8()
BEGIN
DECLARE a INT;
DECLARE b INT;
SET a = 5;
SET b = 5;
declare cur0 cursor for select pkid from T_VSM_SECPOLICY_USERGROUP; --這裡為什麼報錯?
END//