Insert date into base access

Résolu
houssemchak Messages postés 15 Date d'inscription mardi 3 mars 2009 Statut Membre Dernière intervention 22 septembre 2010 - 23 avril 2010 à 16:37
 wouroud - 10 sept. 2020 à 21:02
bonjour
lors de l'insertion d'une date dans ma table intervention (champs: date_int) j ai eu une pb:
je demande d'insérer la date 04/05/2010
je trouve dans la base 05/04/2010.
Merci de vous m'aidez j ai pas trouvé une solution



voici ma code
Connection.ConnectionString = "provider=microsoft.jet.oledb.4.0;" & _
"data source= \\Sweet-035c6263a\E\base" & "\gmao.mdb"
Try

Dim codit, li, typ, fr, codm, p, datpl, datder
Dim cmd As String
typ = ""
If CheckBox3.Checked = True Then
p = True
Else
p = False
End If
If CheckBox1.Checked True And CheckBox2.Checked False Then
typ = CheckBox1.Text
ElseIf CheckBox1.Checked False And CheckBox2.Checked True Then
typ = CheckBox2.Text
Else
MsgBox("imbossible de choisir ce type de maintenance")
End If
codit = TextBox1.Text
li = TextBox2.Text
fr = TextBox5.Text
codm = ComboBox1.SelectedItem
datpl = TextBox3.Text
datder = CDate(TextBox4.Text).Date
cmd = "INSERT INTO intervention VALUES ('" & codit & "' , '" & li & "' , '" & typ & "','" & fr & "','" & codm & "'," & p & ",#" & datder & "#," & datpl & " )"

Dim adapter As New OleDbDataAdapter(cmd, Connection)
Dim tob As New Data.DataSet
Connection.Open()
adapter.Fill(tob)
Catch ex As Exception
MsgBox("Impossible d'ajouter cette intervention. Vérifiez vos champs")
End Try
Connection.Close()
A voir également:

17 réponses

adnennahali Messages postés 11 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 24 avril 2010
24 avril 2010 à 13:07
votre probléme se resoudre de la maniére suivant :

declarer un variable caractére

public ConvertDate as string
puis dans la procédure de la boutton enregistrer

tu mais :

1/en insertion

nom_controle_qui_contient_le_date
ConvertDate=format(nom_controle_qui_contient_le_date,"MM/DD/YYYY")



2/en consultation
nom_controle_qui_contient_le_date
ConvertDate="#" & format(nom_controle_qui_contient_le_date,"MM/DD/YYYY") & "#"
et tu l'affecte la variable DateConvert dans la requéte sql



Voila
Merci
3
lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
23 avril 2010 à 16:47
Bonjour,

T'as pas trouvé de solution??as-tu cherché sur ce forum ce problème revient sans cesse, problème d'options régionales entre le format JJ/DD/YYYY et DD/JJ/YYYY


L'expérience, c'est une connerie par jour, mais jamais la même..
1
houssemchak Messages postés 15 Date d'inscription mardi 3 mars 2009 Statut Membre Dernière intervention 22 septembre 2010
23 avril 2010 à 17:04
merci je pense pas. j ai travaillé avant ce problème n'a jamais apparus.
en plus la lecture il le lu convenablement 04/05/2010 mais dans l'affichage non. j'ai maintenant 2 jours bloquées dans cette problème
0
houssemchak Messages postés 15 Date d'inscription mardi 3 mars 2009 Statut Membre Dernière intervention 22 septembre 2010
23 avril 2010 à 17:10
comment je peut la régler
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
23 avril 2010 à 18:27
Salut,

C'est à toi de formatter tes dates comme tu le souhaites :

Les dates sont stockées au format DD/mm/yyyy dans les bases de données access. Donc il te faut les formater au bon format lorsque tu les insére, et inversement, lorsque tu les lis :

Pour l'insertion :
"INSERT INTO Table (date) VALUES " & Format(date, "MM/dd/yyyy")


Pour la lecture :
recordset = "SELECT date FROM Table"
taDate = Format(recordset.fields("date").Value, "dd/MM/yyyy")
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0
houssemchak Messages postés 15 Date d'inscription mardi 3 mars 2009 Statut Membre Dernière intervention 22 septembre 2010
24 avril 2010 à 09:48
merci de votre idée mais le pb a resté. mon pb c'est pas le définition du date.pour vous comprennez bien mon pb je vais vous donné un exemple:

je tape la date (04/05/2010) dans le texte box et j'ajoute :
sortie VB je le trouve (04/05/2010)
dans la base (05/04/2010)
la la date est changé dans la base



par contre lorsque je tape une date 19/04/2010 rien ne se change.
je pense que le problème survienne de l' access
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
24 avril 2010 à 10:17
Salut,

Je me répète :

Les dates sont stockées au format DD/mm/yyyy dans les bases de données access.


Enfin, c'est plutôt le langage SQL d'access qui veut cà.

Il faut les formater au format américain dans tes requêtes SQL, sinon pour access : 01/02/2010 = 2 janvier 2010 et non 1èr février 2010.

Forcément, pour le 19/02/2010 y'a pas de problème car le mois 19 n'existe pas.
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0
houssemchak Messages postés 15 Date d'inscription mardi 3 mars 2009 Statut Membre Dernière intervention 22 septembre 2010
24 avril 2010 à 10:29
j'espère que je ne vous dérange pas mais s'il vous plais comment faire. je me sens bloquée.
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
24 avril 2010 à 10:32
Salut,

Je t'ai donné l'exemple dans mon précédent post :
Pour l'insertion :
"INSERT INTO Table (date) VALUES " & Format(date, "MM/dd/yyyy")


Pour la lecture :
recordset = "SELECT date FROM Table"
taDate = Format(recordset.fields("date").Value, "dd/MM/yyyy")
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0
houssemchak Messages postés 15 Date d'inscription mardi 3 mars 2009 Statut Membre Dernière intervention 22 septembre 2010
24 avril 2010 à 10:34
j ai essayé dans un nouveau projet ce code il a apparut un erreur
(La conversion de la chaîne "dd" en type 'Double' n'est pas valide.)




Connection.ConnectionString = "provider=microsoft.jet.oledb.4.0;" & _
"data source= C:\Documents and Settings\Administrateur\Bureau" & "\dat.mdb"


'Try
Dim n, d
Dim cmd As String
n = TextBox1.Text
d = TextBox2.Text
cmd = "INSERT INTO dt VALUES (" & n & ", #" & Format(d, "dd" / "mm" / "yyyy") & "# )"



Dim adapter As New OleDbDataAdapter(cmd, Connection)
Dim tob As New Data.DataSet
Connection.Open()
adapter.Fill(tob)
' Catch ex As Exception
MsgBox("Impossible d'ajouter cette intervention. Vérifiez vos champs")
' End Try
Connection.Close()
0
houssemchak Messages postés 15 Date d'inscription mardi 3 mars 2009 Statut Membre Dernière intervention 22 septembre 2010
24 avril 2010 à 10:35
avec d est la date
0
houssemchak Messages postés 15 Date d'inscription mardi 3 mars 2009 Statut Membre Dernière intervention 22 septembre 2010
24 avril 2010 à 11:18
Console.WriteLine("dat=" & Format(CDate(DateTimePicker1.Value).Date, "dd/mm/yyyy"))
je choisis 05/04/2010
sortie : 05/00/2010
pourquoi??????????????????????????
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
24 avril 2010 à 11:20
Salut,

Arf, j'avais pas vu que c'était du VB.Net, je pensais que c'étais du VB6. A voir avec les membres qui font du VB.Net.
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0
houssemchak Messages postés 15 Date d'inscription mardi 3 mars 2009 Statut Membre Dernière intervention 22 septembre 2010
24 avril 2010 à 11:22
je vous informe que le formattage de la date est effectuée mais le pb est le meme. c'est pas la pein laisse tombé. c'est pas une pb de programmation. je sais ou le pb??
merci
0
houssemchak Messages postés 15 Date d'inscription mardi 3 mars 2009 Statut Membre Dernière intervention 22 septembre 2010
24 avril 2010 à 11:51
je vous remercie mon ami. Vous etes agreable. et surtt désolé pour le dérangement
0
houssemchak Messages postés 15 Date d'inscription mardi 3 mars 2009 Statut Membre Dernière intervention 22 septembre 2010
24 avril 2010 à 13:26
merci adnennahali
maintenant c'est résolue
0
j'ai eu le même problème, svp c'est quoi la solution pour éviter que la date s'inverse dans la BD lors de l’exécution de la requête et merci d'avance
0
Rejoignez-nous