私のテキストファイルは次のようになります。
10May2013 3.1 http://ncbi.org p.sojae_aafeatureimp p.sojae_aafeatureimp
10May2013 3.2 http://ncbi.org p.sojae_aasequenceimp p.sojae_aasequenceimp
10May2013 3.3 http://ncbi.org p.sojae_blatalignment p.sojae_blatalignment
これらの個別の行を解析して DB に挿入するにはどうすればよいですか?
DB 構造: (日付、バージョン、URL、名前、説明)
Python を使用して、テキスト ファイルから mysql に値を挿入する必要があります。これまでのところ、私のスクリプトは次のようなものです:
import MySQLdb, csv, sys
with open('externaldatabase.txt') as textfile:
csvreader = csv.reader(textfile)
csvdata = []
for row in csvreader:
csvdata.append(row)
conn = MySQLdb.connect (host = "localhost",user = "username", passwd = "password",db = "database_name")
c = conn.cursor()
for row in csvdata:
# Insert a row of data
c.execute("INSERT INTO externaldatabase (release_date, version, download_url, name, description) VALUES ('%s', '%s', '%s', '%s', '%s')" % (row))
conn.commit()
c.close()
しかし、エラーが発生しています:
Traceback (most recent call last):
File "csv1.py", line 16, in <module>
c.execute("INSERT INTO externaldatabase (release_date, version, download_url, name, description) VALUES ('%s', '%s', '%s', '%s', '%s')" % (row))
TypeError: not enough arguments for format string