我正在使用MySQLdb模块插入数据库。我有以下代码sqlString = """INSERT INTO PERFORMER (PERFORMER)
VALUES (%s)
WHERE NOT EXISTS (SELECT * FROM PERFORMER P
WHERE P.PERFORMER = %s)"""
data = [(c, c) for c in self._performers]
self._cursor.executemany(sqlString, data)
基本上,我想插入self._performers(这只是一个名称列表)中不在PERFORMERS表中的条目。但我收到了下面的打字错误
^{2}$
全迹Traceback (most recent call last):
File "tvGuide.py", line 437, in
processing.UpdatePerformers()
File "tvGuide.py", line 307, in UpdatePerformers
self._cursor.executemany(sqlString, data)
File "C:\Python27\lib\site-packages\MySQLdb\cursors.py", line 246, in executemany
self.errorhandler(self, TypeError, msg)
File "C:\Python27\lib\site-packages\MySQLdb\connections.py", line 36, in defaulterrorhandler
raise errorclass, errorvalue TypeError: not all arguments converted during string formatting
这是一个很长的自我表演者名单['Lucy Alexander', 'Martin Roberts', 'Alistair Appleton', 'Zak Bagans', 'Aaron Goodwin', 'Nick Groff', 'John Zaffis', 'Ellen Pompeo', 'Patrick Dempsey',