使用者自定義函式(user-defined function,udf)是一種對mysql擴充套件的途徑,其用法與內建函式相同。
自定義函式兩個必要條件:
引數:可以有另個或多個
返回值:只能有乙個
建立自定義函式:
cerate function function_name([指定引數型別], ...... )
returns
return [characteristic ...] routine_body
注釋:returns後接返回值的型別
routine_body指的是函式體:
(1)函式體有合法的sql語句構成
(2)函式體可以是簡單的select或insert語句
(3)函式體如果為復合結構則使用begin...end語句
(4)復合結構可以包含宣告,迴圈,控制結構,......
characteristic是指自定義函式的特性,形式為:comment 'string' |
commetn:注釋
contains sql:包含sql語句,但不包含讀或寫資料的語句
no sql:不包含sql語句
reads sql dara:包含讀資料的語句
modifies sql data:包含
呼叫函式:select function_name([引數])
刪除自定義函式:drop function function_name例子:
1、建立乙個無參函式,實現格式化當前日期的功能
->create function f1() returns varchar(30) return date_format(now(),'%y年%m月%d日 %h點:%i分:%s秒')
2、建立乙個帶參的函式,實現計算平均值的功能
->create function f2(num1 smallint unsigned,num2 smallint unsigned) returns float(10,2) unsigned return (num1+num2)/2;
3、建立乙個復合函式,用begin...end
mysql>delimiter //
mysql>create function adduser(username varchar(20))
->returns int unsigned
->begin
->insert test(username) value(username);
->return last_insert_id();
->end
mysql>delimiter ;
tips:
在 程式被定義的時候,用mysql客戶端delimiter命令來把語句定界符從 ;變為//。這就允許用在 程式體中的;定界符被傳遞到伺服器而不是被mysql自己來解釋
mysql客戶端配置 MySQL客戶端配置和使用
安裝mysql sudo apt get install mysql server 這個應該很簡單了,而且我覺得大家在安裝方面也沒什麼太大問題,所以也就不多說了,下面我們來講講配置。配置mysql 注意,在ubuntu下mysql預設是只允許本地訪問的,如果你要其他機器也能夠訪問的話,那麼需要改變 ...
WCF客戶端建立
1 客戶端體系結構 建立客戶端 有2種方法 1 通過生成的 建立 程式 2 通過通道工廠channelfactory物件來建立 程式 2 channelfactory 建構函式 屬性 credentials 憑證 通過工廠建立的通道,返回客戶端與服務端點通訊時使用的憑證 endpoint 返回通道通...
建立WCF客戶端
服務既然已經發布,接下來我們就需要有乙個客戶端來訪問這個服務了。搭建wcf的客戶端,最重要就是要遵循服務端的契約,客戶端通過 proxy 來訪問服務端點,而並不關心服務端的具體實現。要做的就是通過與服務端確認通訊協議,並通過通道 channels 交換資料。在服務端,servicehost會為每個端...