Aby wstawić wartości null do bazy danych, masz dwie możliwości:
- pomiń to pole w instrukcji INSERT lub
- użyj
None
Ponadto:Aby zabezpieczyć się przed wstrzykiwaniem SQL, nie należy używać normalnej interpolacji ciągów dla zapytań.
Powinieneś przekazać dwa (2) argumenty do execute()
, np.:
mycursor.execute("""INSERT INTO products
(city_id, product_id, quantity, price)
VALUES (%s, %s, %s, %s)""",
(city_id, product_id, quantity, price))
Alternatywa nr 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))