Erreur de conversion du type de données varchar en numeric.
cs_houba80
Messages postés12Date d'inscriptionmardi 30 septembre 2008StatutMembreDernière intervention10 avril 2013
-
25 mai 2010 à 15:48
SharpMao
Messages postés1024Date d'inscriptionmardi 4 février 2003StatutMembreDernière intervention 7 juin 2010
-
27 mai 2010 à 06:17
j'ai un champ dans ma base de type numeric(18,3) donc dans mon application j'ai déclaré un double, si j'utilise un nombre entier par exemple 18 22 ...
tout ça marche bien mais si j'utilise 21,5 par exemple une exception est générer "Erreur de conversion du type de données varchar en numeric."
pour la convertion j'utilise
Convert.toDouble(textbox.text);
quel est l'erreur exactement et qu'est ce que je doit faire
A voir également:
La conversion d'un type de données varchar en type de données datetime a créé une valeur hors limites
La conversion d'un type de données nvarchar en type de données datetime a créé une valeur hors limites. - Meilleures réponses
Sql convert varchar to numeric - Meilleures réponses
SharpMao
Messages postés1024Date d'inscriptionmardi 4 février 2003StatutMembreDernière intervention 7 juin 201069 27 mai 2010 à 06:17
Re-salut,
C'est bien ce que je pensais. Il faut utiliser des requêtes paramétrées.
Le problèmes vient que ta base de données utilise sans doute le point comme caractère de séparation entre les entiers et les décimales, alors que ton système utilise la virgule (ou le contraire). Je parie que si tu regarde la valeur de rsql, tu auras "Select * from tva where tva=21,5".
En utilisant les requêtes paramétrées, tu n'auras pas ce genre de problèmes, car tu n'enverras pas ce nombre sous forme de string à ta base de données, mais vraiment ton double.
Amicalement, SharpMao
"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!"
(Coluche / 1944-1986 / Pensées et anecdotes)