Formatter une date dans une base Sqlite
bonjour,
Le sujet est l'opération inverse de celui-ci :
J'ai deux DTP dans un formulaire dont le rôle est de capter une date et de l'enregistrer dans une base de données SQLITE
Ces 2 DTP sont paramétrés exactement de la même façon dans le designer.
D'ailleurs j'ai vérifié par un débogage pas à pas que DTP.value renvoie bien la même valeur pour une date donnée (par exemple #10/26/2103 6:41:34 PM#
Pour x raisons que je ne développerai pas ici, je n'ai pas codé de la même façon l'enregistrement de leur valeur dans la base de données :
1er code :
Code:
1 2 3 4 5 6 7
| Dim dr As DataRow = Nothing
Dim dt As DataTable = monDataSettypé.maDataTable
dr = dt.NewRow
dr("DateAchat") = DTP_Achat.Value
dt.Rows.Add(dr)
monTableAdapter.Update(dt) |
Le résultat en base de données est : "26/10/2013 18:41:34"
2ème code :
Code:
1 2 3 4 5 6 7 8 9
| SQL = "INSERT INTO table (...,DateVente) VALUES (...,@DateVente)"
dim con as New SQLiteConnectionString(maconnexionstring)
con.Open()
dim cmd as New SQliteCommand(SQL, con)
cmd.Parameters.AddWithValue("@DateVente", DTP_DateVente.Value)
...
cmd.ExecuteNonQuery()
cmd.Dispose()
con.Close() |
Le résultat en base de données est : "2013-10-26 18:41:34"
Pour info, c'est ce format que je souhaite avoir.
J'ai donc la parade pour le code 1 :
Code:
1 2
|
dr("DateAchat") = DTP_Achat.Value.ToString("yyyy-MM-dd 00:00:00") |
Mais j'aimerais assez comprendre pourquoi je n'obtiens pas le même format avec le 1er le 2ème code alors que, a priori, ces 2 types de codes sont "synonymes".
Quelqu'un a-t-il une piste d'explication ?