Um Nullwerte in die Datenbank einzufügen, haben Sie zwei Möglichkeiten:
- lassen Sie dieses Feld in Ihrer INSERT-Anweisung weg, oder
- benutze
None
Außerdem:Um sich vor SQL-Injection zu schützen, sollten Sie für Ihre Abfragen keine normale String-Interpolation verwenden.
Sie sollten zwei (2) Argumente an execute()
übergeben , z. B.:
mycursor.execute("""INSERT INTO products
(city_id, product_id, quantity, price)
VALUES (%s, %s, %s, %s)""",
(city_id, product_id, quantity, price))
Alternative #2:
user_id = None
mycursor.execute("""INSERT INTO products
(user_id, city_id, product_id, quantity, price)
VALUES (%s, %s, %s, %s, %s)""",
(user_id, city_id, product_id, quantity, price))