Ho provato a inserire un campo (title
) con PyMySQL che può essere NULL
o una stringa. Ma non funziona.PyMySQL Inserisci NULL o una stringa
query = """
INSERT INTO `chapter` (title, chapter, volume)
VALUES ("%s", "%s", %d)
"""
cur.execute(query % (None, "001", 1))
cur.execute(query % ("Title", "001", 1))
Questo codice inserisce None
nel database. Se rimuovo le virgolette intorno alla prima %s
, si genera un errore:
pymysql.err.InternalError: (1054, "Unknown column 'None' in 'field list'")
Cosa posso fare per inserire NULL?
Impressionante! Va bene ora. Molte grazie! – Cronos87
Cosa intendi quando dici "Non utilizzare mai la formattazione di stringhe per sql"? Sono un principiante di mysql, facendo qualcosa di simile all'OP. – ScheissSchiesser
@ScheissSchiesser, può portare a SQL injection. Quindi è meglio usare il binding di parametri come nell'esempio di codice sopra – Retard