Ich habe schon seit einiger Zeit mit meinem Kopf gegen diese Wand geschlagen. Ich kann diese Einfügeabfrage nicht zum Funktionieren bringen. Liegt es daran, dass ich mehrere Datentypen (int, bool, strings, NoneType) eingefügt habe und %s
verwende? Jede Hilfe würde sehr geschätzt werden. Vielen Dank! pymysql: TypeError: Nicht alle Argumente wurden während der Formatierung der Zeichenkette konvertiert.
values = [None, '1.1.1.15', '2.2.2.2', 15, 1, 'hax', 'NULL', 'need to build this', False, 'NULL', 'NULL', 'NULL']
Fehler
:class DBWork(object):
def __init__(self, attackerip=None, victimip=None, shunlen=15, shuncount=1, shunreason=None, shunepoch=None,
shunerrorbool=False, shunerror=None, paloaddedepoch=None, paloremovedepoch=None,
lastshunlen=15):
self.Id = None
self.attackerip = attackerip
self.victimip = victimip
self.shunlen = shunlen
self.shuncount = shuncount
self.shunreason = shunreason
self.shunepoch = shunepoch
self.shundatetime = 'need to build this'
self.shunerrorbool = shunerrorbool
self.shunerror = shunerror
self.paloaddedepoch = paloaddedepoch
self.paloremovedepoch = paloremovedepoch
self.lastshunlen = lastshunlen
self.shunlen = shunlen
self.newshunlen = lastshunlen * shuncount
def HistoryInsert(self):
insert_query = (
"INSERT INTO `autoshun`.`shunhistory` "
"(Id, attackerip, victimip, shunlen, shuncount, shunreason, shunepoch, shundatetime, shunerrorbool, "
"shunerror, paloaddedepoch, paloremovedepoch) "
"VALUES "
"(NULL, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s);"
)
values = [None, self.attackerip, self.victimip, self.shunlen, self.shuncount, self.shunreason, self.shunepoch,
self.shundatetime, self.shunerrorbool, self.shunerror, self.paloaddedepoch, self.paloremovedepoch]
print values
self.cur.execute(insert_query, values)
sample = DBWork(attackerip='1.1.1.15', victimip='2.2.2.2', shunlen=15, shuncount=1, shunreason='hax', shunerrorbool=True)
sample.DBConnect()
sample.HistoryInsert()
Werte gekennzeichnet ist, übergeben
Traceback (most recent call last):
File "/home/dobbs/PycharmProjects/autoshun/sqlobjects.py", line 102, in <module>
sample.HistoryInsert()
File "/home/dobbs/PycharmProjects/autoshun/sqlobjects.py", line 95, in HistoryInsert
self.cur.execute(insert_query, values)
File "/usr/lib64/python2.7/site-packages/pymysql/cursors.py", line 164, in execute
query = self.mogrify(query, args)
File "/usr/lib64/python2.7/site-packages/pymysql/cursors.py", line 143, in mogrify
query = query % self._escape_args(args, conn)
TypeError: not all arguments converted during string formatting
DANKE !! das war es definitiv. – dobbs
Prost, Kumpel. Happy Coding für Sie! – bernie