0
私はubuntuで同じコードを使いましたが、うまくいきましたが、Windowsで実行しようとすると "()"という出力が出ました。私はmysqlにpythonでデータが挿入されない
import csv
import string
import MySQLdb
with open('cool1.txt','r') as csvfile:
scoreFileReader=csv.reader(csvfile)
scoreList=[]
for row in scoreFileReader:
if len(row) !=0:
scoreList=scoreList + [row]
csvfile.close()
print(scoreList)
temp=str(scoreList).translate(string.maketrans('', ''), '[]\'')
#print(temp)
db = MySQLdb.connect("localhost","root","","test123")
#setup cursor
cursor = db.cursor()
#create anooog1 table
cursor.execute("DROP TABLE IF EXISTS db1234")
sql = """CREATE TABLE db1234 (
uid VARCHAR(100) NOT NULL,
price INT(100) NOT NULL)"""
cursor.execute(sql)
try:
cursor.execute("""INSERT INTO db1234 VALUES (%s,%s)""",(scoreList))
db.commit()
except:
db.rollback()
#how table
cursor.execute("""SELECT * FROM db1234;""")
print cursor.fetchall()
db.close()
assistance.`必要とテキストファイルのデータは、これらのように見えるように、このフィールドに新しい:エラーを除いて除去した後
E0 C1 7F 7A
0
は、これらの
[['E0 C1 7F 7A'], ['0']]
Traceback (most recent call last):
File "csvfile_writer2.py", line 31, in <module>
cursor.execute("""INSERT INTO db1234 VALUES (%s,%s)""",(scoreList))
File "C:\Python27\lib\site-packages\MySQLdb\cursors.py", line 174, in execute
self.errorhandler(self, exc, value)
File "C:\Python27\lib\site-packages\MySQLdb\connections.py", line 36, in defaulterrorhandler
raise errorclass, errorvalue
_mysql_exceptions.ProgrammingError: (1064, 'You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near \'),("\'0\'",))\' at line 1')
ようになりました
句を除いて、それは
C:\Users\supar\Desktop>python csvfile_writer2.py
[['E0 C1 7F 7A'], ['0']]
()
C:\Users\supar\Desktop>
を持っているので:'句。データが挿入されないようにするエラーが発生している可能性があります。 – bernie
出力は次のようになりました – Fiore
2つのプレースホルダーと1つのアイテムが各反復に挿入されます。それは動作しません。 – bernie