morleys
Messages postés6Date d'inscriptiondimanche 30 novembre 2003StatutMembreDernière intervention28 septembre 2006
-
22 juin 2005 à 15:37
morleys
Messages postés6Date d'inscriptiondimanche 30 novembre 2003StatutMembreDernière intervention28 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é.
cs_fabrice69
Messages postés1765Date d'inscriptionjeudi 12 octobre 2000StatutMembreDernière intervention11 décembre 20135 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