phpmyadmin上在某數據庫里創建函數


改那個PHP項目加了個功能,本地MYSQL里添加了一個函數了,現在要轉到服務器上,然后服務器上的MYSQL只能通過PHPMYADMIN網頁操作的,在網頁上SQL里輸入創建函數的語句,

結果報錯了:this function has none of DETERMINISTIC

查了一下是這個原因:https://www.jb51.net/article/97037.htm

在上面再運行:set global log_bin_trust_function_creators=1; 就行了

另我本地的MYSQL是用SQLYOG連接的,導出的函數創建語句里有/* 之類的注釋的,放在PHPMYADMIN上執行的時候需要去掉,要不然有可能執行不了,還有那個

DEFINER=`root`@`%` 也要去掉。。。

下面是我的函數創建語句:

 

USE `sql88_aosijue_c`;
DELIMITER $$
CREATE FUNCTION `calc_xjs`(user_id int) RETURNS int(11)
BEGIN	 
	return (SELECT COUNT(1) FROM tp_users WHERE pid=user_id);
END  $$
DELIMITER ;

注意放在服務器上的PHPMYADMIN執行的話那個USE后的數據庫名也要和服務器上的一致


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM