MySQL中delimiter關(guān)鍵字的使用解讀
1、delimiter的簡介
delimiter是mysql分隔符,在mysql客戶端中分隔符默認是分號(;)。
如果一次輸入的語句較多,并且語句中間有分號,這時需要新指定一個特殊的分隔符。
其實就是告訴mysql解釋器,該段命令是否已經(jīng)結(jié)束了,mysql是否可以執(zhí)行了。
默認情況下,delimiter是分號;。
在命令行客戶端中,如果有一行命令以分號結(jié)束,那么回車后,mysql將會執(zhí)行該命令。
詳細解釋:
其實就是告訴mysql解釋器,該段命令是否已經(jīng)結(jié)束了,mysql是否可以執(zhí)行了。
默認情況下,delimiter是分號;。
在命令行客戶端中,如果有一行命令以分號結(jié)束, 那么回車后,mysql將會執(zhí)行該命令。
如輸入下面的語句 :
mysql> select * from test_table;
然后回車,那么MySQL將立即執(zhí)行該語句。
2、delimiter的使用
但有時候,不希望MySQL這么做。
在為可能輸入較多的語句,且語句中包含有分號。
這種情況下,就需要事先把delimiter換成其它符號,如//、$$或者;;。
更改結(jié)束標志的定義如下:
mysql>delimiter //
示例:
創(chuàng)建一個存儲過程,在創(chuàng)建該存儲過程之前,將delimiter分隔符轉(zhuǎn)換成符號“//”,最后在轉(zhuǎn)換回符號“;”。
-- 將結(jié)束標志符更改為// delimiter // -- 創(chuàng)建存儲過程 create procedure proce_user_count(OUT count_num INT) reads sql data begin select count(*) into count_num from tb_user; end // -- 將結(jié)束標志符更改回分號 delimiter ;
上面就是,先將分隔符設(shè)置為 //, 直到遇到下一個 //,才整體執(zhí)行語句。
執(zhí)行完后,最后一行, delimiter ; 將mysql的分隔符重新設(shè)置為分號;
如果不修改的話,本次會話中的所有分隔符都以// 為準。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
MySQL為JSON字段創(chuàng)建索引方式(Multi-Valued?Indexes?多值索引)
這篇文章主要介紹了MySQL為JSON字段創(chuàng)建索引方式(Multi-Valued?Indexes?多值索引),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-08-08MYSQL自定義函數(shù)判斷是否正整數(shù)的實例代碼
這篇文章主要介紹了MYSQL自定義函數(shù)判斷是否正整數(shù) 的實例代碼,主要是使用正則表達式來判斷,具體實例代碼大家跟隨小編一起通過本文學(xué)習(xí)吧2018-11-11MySQL和連接相關(guān)的timeout 的詳細整理
這篇文章主要介紹了MySQL和連接相關(guān)的timeout 的詳細整理的相關(guān)資料,本文主要總結(jié)下和連接有關(guān)的timeout,需要的朋友可以參考下2017-08-08