mysql 資料匯入
mysql 可以採用2種簡單的方法將之前備份檔案中的資料載入進 mysql 資料庫。
利用 load data 匯入資料
mysql 利用 load data 語句作為批量資料載入器。下面這個範例將從當前目錄中讀取 dump.txt 檔案,然後把它載入進當前資料庫的表 mytbl 中。
mysql> load data local infile 'dump.txt' into table mytbl;
如果不寫 local 關鍵字,mysql 會從伺服器主機檔案系統的根目錄開始,以完整指明檔案位置的絕對路徑名方式開始查詢資料檔案。mysql 會從給定位置讀取檔案。
預設情況下,load data 假定資料檔案中每行都由換行符所終止,每行的資料值由製表符所分隔開。
為了明確指定檔案格式,使用 fields 子句來描述行內字段特徵, lines 子句指定行末尾序列。下例中的 load data 語句表明,資料檔案中的值由冒號(:)分隔,每行由換行符及回車符所終止。
mysql> load data local infile 'dump.txt' into table mytbl
-> fields terminated by ':'
-> lines terminated by '\r\n';
load data 假定資料檔案中的列的順序與表中列的順序相同。如果不為真,可以指定乙個列表來指示資料檔案中具體表列的載入方式。假如表有3個列:a、b和c,但資料檔案中對應的是列b、c與a,則可以這樣載入。
mysql> load data local infile 'dump.txt'
-> into table mytbl (b, c, a);
利用mysqlimport 匯入資料
mysql 還包含乙個工具程式:mysqlimport。它相當於 load data 的乙個封裝器,因而你可以直接從命令列中載入輸入檔案。
將 dump.txt 中的資料載入進表 mytbl,可以在 unix 系統的命令列中使用以下命令:
$ mysqlimport -u root -p --local database_name dump.txt
password *****
如果使用mysqlimport,命令列選項就會提供格式說明符。mysqlimport 命令作用相當於前面的兩個load data 語句,語法如下:
$ mysqlimport -u root -p --local --fields-terminated-by=":" \
--lines-terminated-by="\r\n" database_name dump.txt
password *****
對於 mysqlimport 來說,你怎麼指定選項的次序並不重要,只要把它們寫在資料庫名稱前面就可以了。
mysqlimport 語句使用 --columns 選項來指定列次序。
$ mysqlimport -u root -p --local --columns=b,c,a \
database_name dump.txt
password *****
處理引號與特殊字元
fields 子句能指定除了 terminated by 之外的其他格式選項。預設情況下,load data 會假定值不加引號,並把反斜槓(\)解釋為表示特殊意義的轉義字元。要想明確指定引號字元,需使用 enclosed by 。mysql 會在處理輸入時將該字元從資料值末尾清除掉。改變預設的轉義字元,需使用 escaped by。
在指定 enclosed by 來表示引號字元應該從資料值末尾清除時,有可能在資料值中包含引號字元,或在其之前新增轉義字元。比如,如果引號和轉義字元是"和\,那麼輸入值"a""b\"c"就會被解讀為a"b"c。
對於 mysqlimport 而言,相應的指定引號和轉義值的命令列選項是--fields-enclosed-by和--fields-escaped-by。
c mysql匯入資料 mysql資料匯入
1 windows解壓 2 修改檔名,例如a.txt 3 rz 匯入到 linux data pcode sudo su cd data pcode rm rf txt 4 合併到乙個檔案 cat txt data.txt dos2unix data.txt 對比檔案行數 wc l txt 5 my...
c mysql 的大量資料匯入
專案需求,本來oracle用得好好的,突然要轉成mysql,我也是醉了。有個匯入的問題,查了半天終於得到解決。oracle中有 oraclebulkcopy,sql當然也有個sqlbulkcopy 這裡有介紹就不說 不廢話了,直接上 應該很容易懂吧 using system using system...
C mysql資料操作
using system using system.collections.generic using system.linq using system.text using system.data using mysql.data.mysqlclient using mysql.data name...