¿Cómo puedo solucionar esto?

programación


pet cannot be added 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'of birth, gender_id, cat_id, picture, instock) values ('coco','pitbull','425....' at line 1

sql = “INSERTAR en tblpet (nombre, raza, precio, color, edad, fecha de nacimiento, id_género, id_gato, imagen, stock) valores (%s,%s,%s,%s,%s,%s,% s,%s,%s,%s)”
#agregar las variables de formulario para cada columna
val = (nombre, raza, precio, color, edad, dt, sexo, gato, ruta de archivo, instk)
cur.ejecutar(sql,val)
con.commit()

Lo que he probado:

Revisé toda mi base de datos y verifiqué el código, pero lo habilité para encontrar el problema.

Solución 1

Tienes una columna llamada date of birthque siempre debe escaparse usando comillas invertidas:
MySQL :: MySQL 8.0 Manual de referencia :: 11.2 Nombres de objetos de esquema[^]

SQL
INSERT into tblpet (name, breed, price, color, age, `date of birth`, gender_id, cat_id, picture, instock) values (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)

Una mejor opción sería cambiar el nombre de su columna para que no contenga espacios; por ejemplo, date_of_birth.

コメント

タイトルとURLをコピーしました