mysql批量插入文本文件

时间:2011-04-08 08:02:56

标签: c# asp.net mysql

我有纯文本文件,我想将该文本文件的内容逐行移动到mysql表中,任何人都可以帮助我,因为它不是csv文件我怎样才能实现这个

我设计了我的数据库如下

RowID, int(11), NO, PRI,auto_increment
Text, varchar(94) // Here i have to insert line by line
RecordType, varchar(50)

内容示例

123456789007
545654665654654
6344534534543534534
786775645654654646
8456546456456546
9078565656546546546456456456

5 个答案:

答案 0 :(得分:3)

您不清楚是否需要执行此操作一次/很少或作为系统的一部分。

在服务器端,您可以使用

执行此操作
LOAD DATA LOCAL INFILE '<file name>' INTO TABLE <table>;

请参阅<{3}}语法

  • 更改行终止字符串
  • 跳过行
  • 在同一命令中为RecordType分配值

编辑: 特别是在你的情况下

LOAD DATA LOCAL INFILE '<file name>' INTO TABLE <table>
(@Text)
SET Text=@Text 

答案 1 :(得分:2)

请参阅LOAD DATA INFILE

答案 2 :(得分:1)

如果您的文件类似于CSV,则可以使用LOAD DATA INFILE声明。

像这样的文本文件(下面的示例),您可以使用dbForge Studio for MySQL中的数据导入工具(文本格式)加载。它支持标题并跳过不必要的行。

================================================================
|      actor_id      |     first_name     |     last_name      |
================================================================
|         1          |      PENELOPE      |      GUINESS       |
----------------------------------------------------------------
|         2          |        NICK        |      WAHLBERG      |
----------------------------------------------------------------
|         3          |         ED         |       CHASE        |
----------------------------------------------------------------
|         4          |      JENNIFER      |       DAVIS        |
----------------------------------------------------------------
|         5          |       JOHNNY       |    LOLLOBRIGIDA    |
----------------------------------------------------------------
|         6          |       BETTE        |     NICHOLSON      |
----------------------------------------------------------------
|         7          |       GRACE        |       MOSTEL       |
----------------------------------------------------------------
|         8          |      MATTHEW       |     JOHANSSON      |
----------------------------------------------------------------
|         9          |        JOE         |       SWANK        |
----------------------------------------------------------------
|         10         |     CHRISTIAN      |       GABLE        |
----------------------------------------------------------------

答案 3 :(得分:0)

一些PHP脚本可以通过灵活简单的方式轻松实现。您需要提供有关文本文件格式和数据库架构的更多详细信息(文本文件中的一些示例)。

另一个解决方案可能只是构建一个VBA宏来将您的文本文件转换为有效的CSV文件。然后使用像phpMyAdmin这样的东西将CSV文件上传到DB

答案 4 :(得分:0)

试试这个

LOAD DATA local INFILE 'C:/Documents and Settings/Administrator/Desktop/Merge.txt' 
INTO TABLE tblachmaster
FIELDS TERMINATED BY ',' ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
IGNORE 1 LINES;