国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

淺談mysql 自定義函數

2020-01-18 23:06:20
字體:
來源:轉載
供稿:網友

因為工作需要,要寫一個mysql的自定義行數,如下

DELIMITER $$DROP FUNCTION IF EXISTS `onlineFunction`$$CREATE FUNCTION `onlineFunction`(rrrr VARCHAR(50)) RETURNS VARCHAR(255)BEGINIF(rrrr='online') THEN RETURN '上線';END IF;END$$DELIMITER ;

第一行DELIMITER 定義一個結束標識符,因為MySQL默認是以分號作為SQL語句的結束符的,而函數體內部要用到分號,所以會跟默認的SQL結束符發生沖突,所以需要先定義一個其他的符號作為SQL的結束符。沒有加這個定義的話...

錯誤碼: 1064You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'end' at line 1

第二行是刪除同名的類,不然會...

錯誤碼: 1304FUNCTION onlineFunction already exists

第三行第一函數名,函數變量,和返回類型

第四行begin是起始,與end$$對應

第五行是if判斷語句,格式為

if(...) then....;elseif....;else.....;end if;return ..;

有時候mysql不能建立自定義函數是因為該功能2未開啟

輸入 show variables like '%func%'; 命令

會看到 log_bin_trust_function_creators 的狀態,如果是OFF表示自定義函數功能是關閉的

輸入命令 set global log_bin_trust_function_creators=1;

可將 log_bin_trust_function_creators 開啟自定義函數功能

但是這樣設置是一個臨時的方案,因為mysql自動重啟后狀態又會變為OFF,所以需要在

在服務啟動時加上 “--log-bin-trust-function-creators=1 ”參數。
或在my.ini(my.cnf)中的[mysqld]區段中加上 log-bin-trust-function-creators=1。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 吕梁市| 依兰县| 板桥市| 锦屏县| 尚义县| 黄大仙区| 河源市| 九江市| 珲春市| 铜鼓县| 渭南市| 神池县| 胶州市| 博兴县| 新民市| 曲沃县| 合阳县| 宁化县| 和平区| 灵璧县| 井冈山市| 南汇区| 商丘市| 五莲县| 宾川县| 建德市| 梓潼县| 公主岭市| 界首市| 杂多县| 黑山县| 长春市| 淮北市| 临海市| 嘉善县| 新宾| 东兴市| 贡觉县| 岑巩县| 永济市| 湖北省|