从文本文件多行INSERT到SQL

时间:2010-02-02 19:51:04

标签: sql mysql text insert

我有一个包含3列的表,其中2列是自动递增的。我有一个包含各种内容的文本文件,我想插入第3列。在该文本中,值被分开:

“value1”,“value2”,“value3”,“etc”,

我如何将所有这些值插入到特定列中,同时能够将上述格式用于我的初始内容(或类似于我可以通过“替换所有”执行的操作),希望使用单个命令在phpmyadmin?

如果我的问题不明确,请告诉我!

提前致谢

2 个答案:

答案 0 :(得分:0)

使用正则表达式将每个值转换为单独行上的完整Insert查询:

INSERT INTO mytable (column3) VALUES ('value1')

这样的事情应该这样做:

Match: "\([^"]*\)", 
Replace with: INSERT INTO mytable (column3) VALUES ('\1') \n

答案 1 :(得分:-1)

首先,如果可能的话,我会以正确的格式获取该文本文件,该文件将是1列,每个值在一个单独的行上。另外,您需要首先编写一个函数将数据拆分为一个列临时表的某种类型,然后通过连接到表进行插入。如果文本文件是合理的格式而不是逗号分隔的混乱,那么您可以直接在大多数数据库中的批量操作中插入它。