load data [low_priority | concurrent] [local] infile 'mysql寫入資料通常用insert語句,如file_name
'[replace | ignore]
into table
tbl_name
[character set
charset_name
][[terminated by '
string
'][[optionally] enclosed by '
char
'][escaped by '
char
']][lines
[starting by '
string
'][terminated by '
string
']][ignore
number
lines][(
col_name_or_user_var
,...)][set
col_name
=expr
,...]
[c-sharp]view plain
copy
insert into person values(張三,20),(李四,21),(王五,70)…;
但有時為了更快速地插入大批量資料或交換資料,需要從文字中匯入資料或匯出資料到文字。
一、 建立測試表,準備資料
首先建立乙個用於測試的表示學生資訊的表,欄位有id、姓名、年齡、城市、薪水。id和姓名不
能為空。
[c-sharp]view plain
copy
create table person(
id int
not
null
auto_increment,
name varchar(40) not null
, city varchar(20),
salary int
, primary key(id)
)engine=innodb charset=gb2312;
建立表截圖如下:
接著寫乙個用於匯入的文字檔案:c:/data.txt。
張三 31 北京 3000
李四 25 杭州 4000
王五 45 /n 4500
小明 29 天津 /n
每一項之間用tab鍵進行分隔,如果該字段為null,則用/n表示。
二、 匯入資料
輸入命令,進行匯入。
[c-sharp]view plain
copy
load data local infile 「c:/data.txt」
into table person(name,age,city,salary);
匯入資料截圖如下:
其中local表示本地。執行後,可以看到null資料也被正確地匯入。
三、 匯出資料
[c-sharp]view plain
copy
select name,age,city,salary
into outfile 「c:/data_out.txt」
lines terminated by 「/r/n」
from person;
匯出資料截圖如下:
其中lines terminated by 「/r/n」表示每一行(即每一條記錄)用/r/n分隔,/r/n是window系
統的換行符。匯出的data_out.txt與data.txt的內容完全一樣。
四、 執行環境
windows vista home basic
mysql 5.1.34-community
五、 注意
字段之間的分隔和記錄(行)之間的分隔預設是/t(即tab)和/n。但可以改變,如:
fields terminated by ',' --欄位用,進行分隔
lines terminated by ';' --記錄用; 進行分隔
另外要注意其它
作業系統的換行符與windows可能不相同。
txt檔案匯入mysql
load data low priority concurrent local infile file name replace ignore into tabletbl name character setcharset name terminated by string optionally e...
txt檔案匯入mysql
mysql寫入資料通常用insert語句,如 c sharp view plain copy insert into person values 張三,20 李四,21 王五,70 但有時為了更快速地插入大批量資料或交換資料,需要從文字中匯入資料或匯出資料到文字。一 建立測試表,準備資料 首先建立乙...
txt檔案匯入mysql
mysql寫入資料通常用insert語句,如 insert into person values 張三,20 李四,21 王五,70 但有時為了更快速地插入大批量資料或交換資料,需要從文字中匯入資料或匯出資料到文字。一 建立測試表,準備資料 首先建立乙個用於測試的表示學生資訊的表,欄位有id 姓名 ...