Insertion d'un objet datetime.datetime Python dans MySQL
Les utilisateurs sont souvent confrontés à des difficultés lorsqu'ils tentent d'insérer des objets datetime.datetime dans des bases de données MySQL. Une erreur courante rencontrée est une "TypeError : tous les arguments ne sont pas convertis lors du formatage de la chaîne" lorsque vous essayez d'utiliser un espace réservé (%s) dans une instruction d'exécution.
La racine de ce problème réside dans les exigences spécifiques du type de données MySQL. . Pour réussir à insérer un objet datetime.datetime dans une colonne d'heure, il est essentiel de formater l'objet dans le format d'horodatage MySQL correct à l'aide de la fonction time.strftime.
import time timestamp = time.strftime('%Y-%m-%d %H:%M:%S')
Cette ligne de code convertit la datetime. objet datetime en une chaîne représentant la date et l'heure au format « AAAA-MM-JJ HH:MM:SS ». Vous pouvez ensuite utiliser cette chaîne comme paramètre pour la requête SQL :
cursor.execute("INSERT INTO table (name, id, datecolumn) VALUES (%s, %s, %s)", ("name", 4, timestamp))
En formatant l'objet datetime à l'aide de time.strftime et en le transmettant sous forme de chaîne, MySQL peut interpréter et stocker correctement les informations de date et d'heure. .
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!