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

首頁 > 數據庫 > MySQL > 正文

mysql LOAD語句批量錄入數據

2024-07-24 12:43:47
字體:
來源:轉載
供稿:網友
幸運的是,MySQL提供了一些方法用于批量錄入數據,使得向表中添加數據變得容易了。本節以及下一節,將介紹這些方法。本節將介紹SQL語言級的解決方法。

1、基本語法

語法:LOAD DATA [LOCAL] INFILE 'file_name.txt' [REPLACE | IGNORE] INTO TABLE tbl_name LOAD DATA INFILE語句從一個文本文件中以很高的速度讀入一個表中。如果指定LOCAL關鍵詞,從客戶主機讀文件。如果LOCAL沒指定,文件必須位于服務器上。(LOCAL在MySQL3.22.6或以后版本中可用。)

為了安全原因,當讀取位于服務器上的文本文件時,文件必須處于數據庫目錄或可被所有人讀取。另外,為了對服務器上文件使用LOAD DATA INFILE,在服務器主機上你必須有file的權限。見第七章 數據庫安全。

REPLACE和IGNORE關鍵詞控制對現有的唯一鍵記錄的重復的處理。如果你指定REPLACE,新行將代替有相同的唯一鍵值的現有行。如果你指定IGNORE,跳過有唯一鍵的現有行的重復行的輸入。如果你不指定任何一個選項,當找到重復鍵鍵時,出現一個錯誤,并且文本文件的余下部分被忽略時。

如果你使用LOCAL關鍵詞從一個本地文件裝載數據,服務器沒有辦法在操作的當中停止文件的傳輸,因此缺省的行為好像IGNORE被指定一樣。

2、文件的搜尋原則

當在服務器主機上尋找文件時,服務器使用下列規則:

如果給出一個絕對路徑名,服務器使用該路徑名。

如果給出一個有一個或多個前置部件的相對路徑名,服務器相對服務器的數據目錄搜索文件。

如果給出一個沒有前置部件的一個文件名,服務器在當前數據庫的數據庫目錄尋找文件。

注意這些規則意味著一個像“./myfile.txt”給出的文件是從服務器的數據目錄讀取,而作為“myfile.txt”給出的一個文件是從當前數據庫的數據庫目錄下讀取。也要注意,對于下列哪些語句,對db1文件從數據庫目錄讀取,而不是db2:

mysql> USE db1;mysql> LOAD DATA INFILE "./data.txt" INTO TABLE db2.my_table;

3、FIELDS和LINES子句的語法

如果你指定一個FIELDS子句,它的每一個子句(TERMINATED BY, [OPTIONALLY] ENCLOSED BY和ESCAPED BY)也是可選的,除了你必須至少指定他們之一。

如果你不指定一個FIELDS子句,缺省值與如果你這樣寫的相同:

FIELDS TERMINATED BY '/t' ENCLOSED BY '' ESCAPED BY '//'

如果你不指定一個LINES子句,缺省值與如果你這樣寫的相同:

LINES TERMINATED BY '/n'

換句話說,缺省值導致讀取輸入時,LOAD DATA INFILE表現如下:

在換行符處尋找行邊界

在定位符處將行分進字段

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 中西区| 洪湖市| 开江县| 大悟县| 玛多县| 郴州市| 彭水| 英吉沙县| 丰城市| 酒泉市| 永康市| 定兴县| 迁西县| 天祝| 凌海市| 红安县| 宁波市| 康平县| 福鼎市| 清徐县| 休宁县| 岑巩县| 塔河县| 乌恰县| 青阳县| 临桂县| 聊城市| 章丘市| 融水| 苍溪县| 海宁市| 开江县| 海原县| 南投县| 丹巴县| 沙田区| 乐平市| 尖扎县| 蓝山县| 洛扎县| 阿瓦提县|