Maison >base de données >tutoriel mysql >Comment insérer correctement des valeurs datetime dans une base de données SQLite ?
Lorsque vous essayez d'insérer une valeur datetime dans une base de données SQLite, vous pouvez rencontrer des complications. Une erreur courante consiste à recevoir un message indiquant « Impossible de lire les données » lors de la tentative de récupération de la valeur.
Cette erreur se produit généralement lorsque la valeur datetime n'est pas formatée correctement. Le format attendu pour les valeurs datetime dans les bases de données SQLite est « aaaa-MM-jj HH:mm:ss ». En d'autres termes, le format doit inclure l'année, le mois, le jour, l'heure, les minutes et les secondes.
Pour insérer correctement une valeur datetime, vous devez utiliser le format suivant :
'2007-01-01 10:00:00'
Par exemple :
create table myTable (name varchar(25), myDate DATETIME); insert into myTable (name, myDate) values ('fred', '2009-01-01 13:22:15');
Pour éviter les erreurs de formatage et renforcer la sécurité, il est recommandé d'utiliser des requêtes paramétrées. Les requêtes paramétrées remplacent les valeurs littérales par des espaces réservés, vous permettant de définir dynamiquement les valeurs pendant l'exécution sans vous soucier du formatage.
Voici un exemple de requête paramétrée pour insérer une valeur datetime :
prepared_statement = connection.prepare("INSERT INTO myTable (name, myDate) VALUES (?, ?)") prepared_statement.bind([('fred'), ('2009-01-01 13:22:15')]) prepared_statement.execute()
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!