MySQL 匯入資料
MySQL中可以使用兩種簡單的方式來匯入MySQL匯出的資料。
使用 LOAD DATA 匯入資料
MySQL 中提供了LOAD DATA INFILE語句來插入資料。 以下實例中將從目前目錄讀取檔案 dump.txt ,將該檔案中的資料插入目前資料庫的 mytbl 表中。
mysql> LOAD DATA LOCAL INFILE 'dump.txt' INTO TABLE mytbl;
如果指定LOCAL關鍵字,則表示從客戶主機上按路徑讀取檔案。如果沒有指定,則檔案在伺服器上按路徑讀取檔案。
你能明確地在LOAD DATA語句中指出列值的分隔符號和行尾標記,但是預設標記是定位符號和換行符號。
兩個指令的 FIELDS 和 LINES 子句的語法是一樣的。兩個子句都是可選的,但是如果兩個同時被指定,FIELDS 子句必須出現在 LINES 子句之前。
如果使用者指定一個 FIELDS 子句,它的子句 (TERMINATED BY、[OPTIONALLY] ENCLOSED BY 和 ESCAPED BY) 也是可選的,不過,使用者必須至少指定它們中的一個。
mysql> LOAD DATA LOCAL INFILE 'dump.txt' INTO TABLE mytbl -> FIELDS TERMINATED BY ':' -> LINES TERMINATED BY '\r\n';
LOAD DATA 預設是依照資料檔案中列的順序插入資料的,如果資料檔案中的資料列與插入表中的資料列不一致,則需要指定資料列的順序。
如,在資料檔案中的列順序是a,b,c,但在插入表的列順序為b,c,a,則資料匯入語法如下:
mysql> LOAD DATA LOCAL INFILE 'dump.txt' -> INTO TABLE mytbl (b, c, a);
使用mysqlimport 匯入資料
mysqlimport客戶端提供了LOAD DATA INFILEQL語句的一個命令列介面。 mysqlimport的大多數選項直接對應LOAD DATA INFILE子句。
從檔案dump.txt 中將資料匯入mytbl 資料表, 可以使用下列指令:
$ mysqlimport -u root -p --local database_name dump.txt password *****
mysqlimport指令可以指定選項來設定指定格式,指令語句格式如下:
$ mysqlimport -u root -p --local --fields-terminated-by=":" \ --lines-terminated-by="\r\n" database_name dump.txt password *****
mysqlimport 語句中使用--columns 選項來設定列的順序:
$ mysqlimport -u root -p --local --columns=b,c,a \ database_name dump.txt password *****
mysqlimport指令常用的選項還有-v 顯示版本(version), -p 提示輸入密碼(password)等。
【相關推薦】
1. 特別推薦:「php程式設計師工具箱」V0.1版本下載
#3. 資料庫設計那些事
#以上是總結MySQL導入資料的兩種方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!