Bonjour,
Dans une requête insert, depuis C#, j'essaye d'enregistrer un repère temporel, sous la forme date + temps, dans une base de données Oracle, sous un champ de type DATE.
Après 2 / 3 heures de recherche sur internet, J'ai essayé de faire ma requête de la manière suivante :
A l’exécution, j'obtiens l'erreur "ORA-1858: Caractère non numérique trouvé à la place d'un caractère numérique"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 string requete = " INSERT INTO NOM_TABLE (Champs1, Champs2, ..., Champs_Date, ...) VALUES (" + Value1 + "," + Value2 + "," + ... + ToOracleSqlDate(System.DateTime.Now) + ... + ")"; .... public string ToOracleSqlDate(DateTime dateTime) { return String.Format("to_date('{0}','dd.mm.yyyy hh24.mi.ss')", dateTime.ToString("dd.MM.yyyy hh:mm:ss")); }
et
Me revoir l'erreur "ORA-1830: Le modèle du format de date se termine avant la conversion de la chaîne d'entrée entière"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 string requete = " INSERT INTO NOM_TABLE (Champs1, Champs2, ..., Champs_Date, ...) VALUES (" + Value1 + "," + Value2 + "," + ... + System.DateTime.Now.ToString("dd.MM.yyyy hh:mm:ss") + ... + ")";
Je ne comprends pas pourquoi j'ai ces erreurs.
Que dois-je faire pour arriver à mes fins ?
[EDIT]
Il m'avait semblé que ça n'avait pas marché avant, mais maintenant ça fonctionne avec
Je me demande si c'est moi qui n’avait pas les yeux en face des trous (pebkac) ou si c'était autre chose.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 string requete = " INSERT INTO NOM_TABLE (Champs1, Champs2, ..., Champs_Date, ...) VALUES (" + Value1 + "," + Value2 + "," + ... + System.DateTime.Now + ... + ")";
[/edit]
Partager