我有一个制表符分隔文件,我想将其转换为mysql表

时间:2010-04-19 23:08:10

标签: python mysql

我有一个tab deimeted文件,我想将其转换为mysql表。文本文件中有25个制表符分隔的字段。 我可以在逐字构造SQL语句时获取值,并获取VALUES部分中单独声明的每个值,但是当我尝试将列表作为一个整体时,它不起作用。这是代码。我无法理解。有什么想法吗?

lines=open(path, "r").readlines()

for line in lines[1:]:

 linex=line.strip().split("\t")
 linex.insert(0,'sometextindex')       

 try:
  cursor.execute('INSERT INTO variants VALUES(%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)',linex) 
 except:
  print 'line number=',a,linex

2 个答案:

答案 0 :(得分:2)

为什么不直接使用mysql中的LOAD DATA INFILE

答案 1 :(得分:0)

stmt="%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s" % (linex[0],linex[1],linex[2], ........ )
....
cursor.execute(stmt) 
....