本篇文章給大家主要講的是關(guān)于實戰(zhàn)演示MySQL中使用LOAD_FILE()函數(shù)的內(nèi)容,感興趣的話就一起來看看這篇文章吧,相信看完實戰(zhàn)演示MySQL中使用LOAD_FILE()函數(shù)對大家多少有點參考價值吧。
創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都做網(wǎng)站、網(wǎng)站制作、洪湖網(wǎng)絡(luò)推廣、小程序開發(fā)、洪湖網(wǎng)絡(luò)營銷、洪湖企業(yè)策劃、洪湖品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)建站為所有大學生創(chuàng)業(yè)者提供洪湖建站搭建服務(wù),24小時服務(wù)熱線:028-86922220,官方網(wǎng)址:www.cdcxhl.com
在MySQL中,LOAD_FILE()函數(shù)讀取一個文件并將其內(nèi)容作為字符串返回。
語法
LOAD_FILE(file_name)
其中file_name是文件的完整路徑。
下面是我從一個文件中選擇內(nèi)容的示例:
SELECT LOAD_FILE('/data/test.txt') AS Result;
結(jié)果:
+------------------------------------------+ | Result | +------------------------------------------+ | This text is all that the file contains! | +------------------------------------------+
一個數(shù)據(jù)庫的例子
下面是一個將文件內(nèi)容插入數(shù)據(jù)庫時查詢的示例:
INSERT INTO MyTable (FileId, UserId, MyBlobColumn) VALUES (1, 20, LOAD_FILE('/data/test.txt'));
在本例中,列MyBlobColumn有一個BLOB數(shù)據(jù)類型(允許它存儲二進制數(shù)據(jù))。
現(xiàn)在它在數(shù)據(jù)庫中,我們可以選擇它:
SELECT MyBlobColumn FROM MyTable WHERE UserId = 20;
結(jié)果:
+------------------------------------------+ | MyBlobColumn | +------------------------------------------+ | This text is all that the file contains! | +------------------------------------------+
如果文件不存在,返回NULL:
SELECT LOAD_FILE('/data/oops.txt') AS Result;
結(jié)果:
+--------+ | Result | +--------+ | NULL | +--------+
如果不滿足以下條件之一,都有可能返回NUll:
1.文件必須位于云服務(wù)器主機上。
2.你必須具有該FILE權(quán)限才能讀取該文件。擁有該FILE權(quán)限的用戶可以讀取云服務(wù)器主機上的任何文件,該文件是world-readable的或MySQL云服務(wù)器可讀的。
3.文件必須是所有人都可讀的,并且它的大小小于max_allowed_packet字節(jié)。
你可以這樣檢查:
SHOW VARIABLES LIKE 'max_allowed_packet';
結(jié)果:
+--------------------+----------+ | Variable_name | Value | +--------------------+----------+ | max_allowed_packet | 67108864 | +--------------------+----------+
如果secure_file_priv系統(tǒng)變量被設(shè)置為非空目錄名,則要加載的文件必須位于該目錄中。
你可以這樣檢查:
SHOW VARIABLES LIKE 'secure_file_priv';
結(jié)果:
+------------------+--------+ | Variable_name | Value | +------------------+--------+ | secure_file_priv | /data/ | +------------------+--------+
在本例中,我只能從/data/目錄中讀取文件。
以上關(guān)于實戰(zhàn)演示MySQL中使用LOAD_FILE()函數(shù)詳細內(nèi)容,對大家有幫助嗎?如果想要了解更多相關(guān),可以繼續(xù)關(guān)注我們的行業(yè)資訊板塊。