目的:利用LOAD DATA LOCAL INFILE方式,将数据从txt文件导入数据到mysql。
过程描述:
txt文件生成部分的代码如下(c#,这段主要是说明我这个txt的内部格式):
StreamWriter writer = new StreamWriter( "d://record.txt", false, Encoding.GetEncoding("gb2312"));
for (int row = 0; row < dataTable.Rows.Count; row++)
for (int col = 0; col < dataTable.Columns.Count; col++)
writer.WriteLine(dataTable.Rows[row][col].ToString() + "/t");
writer.Close();
(说明: dataTable里是从数据库查出来的数据)
生成的d://record.txt格式如下:
217
冰火霜剑
3237866
2012-11-28 14:39:45
00010100011100100101100000.....(此字段是个二进制字段)
mysql数据库中,表deletehistory 结构如下,没有自增:
现在要把文本 d://record.txt 中的数据 添加到表deletehistory 里。
运行即可成功。
注意:路径中不要出现中文字符,不然会报错。
如:LOAD DATA LOCAL INFILE 'D:工程代码/工具项目/GameTools/Debug/record.txt' into table deletehistory fields terminated by '/r/n' 就不行