VB.net 2005 et SQL 2005 Express : Prbl DateTime

Résolu
morleys
Messages postés
6
Date d'inscription
dimanche 30 novembre 2003
Statut
Membre
Dernière intervention
28 septembre 2006
- 22 juin 2005 à 15:37
morleys
Messages postés
6
Date d'inscription
dimanche 30 novembre 2003
Statut
Membre
Dernière intervention
28 septembre 2006
- 24 juin 2005 à 12:15
Bonjour à vous tous,

Je coince voilà quelque temps sur un probleme d'enregistrement de date SQL 2005.

Si j'ai toto Cdate(Now()) Pour info toto 22/06/2005

et que j'ai

RequeteSQL = "INSERT INTO Truc ("Date_Jour") VALUES (25/12/2005 21:32:25)"

SQL me renvoi une erreur {"Conversion from string "Incorrect syntax near '21'." to type 'Integer' is not valid."}

Si par contre je mets

RequeteSQL = "INSERT INTO Truc ("Date_Jour") VALUES (toto)

Je n'ai pas d'erreur mais par contre il a rien enregistrer dans la base de données SQL et mon champs Date_Jour prend une valeur par défaut soit 01/01/1900 00:00:00
Dernière chose, j'ai essayer en configurant mon champs en DateTime et smalldatetime et cela n'a rien changé.

Merci par avance ;)

Morleys

3 réponses

cs_fabrice69
Messages postés
1765
Date d'inscription
jeudi 12 octobre 2000
Statut
Membre
Dernière intervention
11 décembre 2013
6
24 juin 2005 à 01:20
Bonjour,

La date que tu envoies n'est simplement pas reconnue par SQL Server en natif.
Tu envoies une date au format francais à un serveur qui fonctionne avec le format US.
2 solutions sont possibles :
- Utiliser le CONVERT en datetime
- Utiliser une fonction dans ton code .NET pour passer ta date au format universel SQL, à savoir : AAAA-MM-JJ HH:MM:SS

Pour le convert (solution la plus élégante), regarde dans l'aide MSDN tu auras la valeur du paramètre à mettre dans la fonction SQL Server

Romelard Fabrice (Alias F___)
3
nhervagault
Messages postés
6063
Date d'inscription
dimanche 13 avril 2003
Statut
Modérateur
Dernière intervention
15 juillet 2011
35
22 juin 2005 à 20:23
Salut



Mets des # autour de la date
0
morleys
Messages postés
6
Date d'inscription
dimanche 30 novembre 2003
Statut
Membre
Dernière intervention
28 septembre 2006

24 juin 2005 à 12:15
Salut,



Nickel ta réponse. Mon problème venait du fait que je n'utilisait pas ma date au format universel SQL.

Je restais bloqué sur le fait que SQL m'affichait JJ/MM/AAAA HH:MM:SS et qu'il fallait que je l'enregistre dans cet ordre.



Mais lorsque j'ai essayé de l'enregistrer dans l'ordre que tu m'as dis celà a tout débloqué !!!



Merci beaucoup pour ton aide qui m'a sortie une grosse épine du pied !



Merci encore !!!!

Morleys
0