MySql函數管理

一、創建函數時,先選擇數據庫,
mysql> use xxx;
Database changed
delimiter $$是設置 $$爲命令終止符號,代替分號,因爲分號在begin...end中會用到;
mysql> delimiter $$
CREATE FUNCTION first_func(param1 varchar(5),parmam2 varchar(5),param3 varchar(10))
RETURNS TINYINT
BEGIN
   RETURN 1;
END
-- 函數創建成功後需恢復分號爲命令終止符號。
mysql> delimiter ;
 
二、查看創建函數的功能是否開啓:
mysql> show variables like '%func%';
+-----------------------------------------+-------+
| Variable_name                            | Value |
+-----------------------------------------+-------+
| log_bin_trust_function_creators | ON    |
+-----------------------------------------+-------+
1 row in set (0.02 sec)

二、如果Value處值爲OFF,則需將其開啓。
mysql> set global log_bin_trust_function_creators=1;
 
 
四、測試:
mysql> select first_func('aaa','bbb','ccc');
 
+-------------------------------+
| first_func('aaa','bbb','ccc') |
+-------------------------------+
|                             1 |
+-------------------------------+
1 row in set (0.47 sec)

 
五、刪除函數:
mysql> drop function first_func ;
 
六、查看函數
1) 顯示數據庫中所有函數的基本信息 
show function status;
 
2)查看某個具體函數
mysql>show create function function;
 
如果出現:
error : 1449: The user specified as a definer ('root'@'%')does not exist……
這錯誤的話,
grant all privileges on *.* to root@"%" identified by "Passwd";
flush privileges;
 解決。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章