我有一堆电子邮件,每个都用逗号(,)(不是csv)分隔。我想将它们上传到数据库表(使用单字段电子邮件),以便每封电子邮件进入单独的记录条目。什么是最简单的方法呢?我有一个使用grep用我的sql语法替换逗号的想法..但是搜索任何其他的解决方法..任何想法?
答案 0 :(得分:2)
也许是这样的:
LOAD DATA INFILE '/where/the/file/is'
INTO TABLE table (email)
FIELDS TERMINATED BY ','
LINES STARTING BY '';
答案 1 :(得分:1)
我使用sed或awk等shell工具将输入格式转换为mysqlimport可以处理的内容。
答案 2 :(得分:1)
将当前','分隔的电子邮件列表转换为每个电子邮件列表一行
tr',''\ n'< inputfilename> outputfilename
在登录mysql后使用load data infile,确保你的表在这种情况下只有一列
将数据infile'outputfilename'加载到表tablename;
答案 3 :(得分:0)
MySQL在单个语句中支持多个插入
INSERT INTO [Table] ([col1], [col2], ... [colN] )
VALUES ([value1], [value2], ... [valueN] )
, ([value1], [value2], ... [valueN] )
, ([value1], [value2], ... [valueN] )
;
您可以很快将逗号分隔文件格式化为此格式。