2010-07-18 10 views
0

J'ai aussi mon formulaire en français, et il change automatiquement le format de texte pour utiliser ','. Toutefois, lorsque j'essaie d'insérer mes valeurs dans la base de données, il est impossible de convertir nvarchar en décimal? Dans le pire des cas, y a-t-il un moyen de désactiver le passage des nombres à l'utilisation de ',' et d'utiliser simplement '.' toujours quelle que soit la langue?Enregistrer le français (valeurs décimales) dans la base de données?

Ma langue de travail est vb.net

Merci,

Robert

+0

Quel moteur de base de données utilisez-vous (c'est-à-dire SQL Server) et quelle bibliothèque d'accès aux données (ADO.NET)? – Jacob

+0

SQL Server est ce que j'utilise – Robert

Répondre

0

Si vous passez les valeurs vers le bas à la base de données nvarchar alors vous aurez besoin d'avoir converti à un chaîne utilisant yourDecimalValue.ToString(Globalization.CultureInfo.InvariantCulture) ou similaire. SQL Server s'attend toujours à ce qu'un nombre décimal soit au format 1.23 - vous pouvez imaginer le problème que cela entraînerait si des requêtes incluant WHERE myvalue IN (1,25, 1,33, 1,45) étaient soumises!

+0

Une autre option consiste à ne pas utiliser les chaînes de requête directement et à utiliser à la place des procédures stockées - où vous pouvez simplement définir la valeur du paramètre à une conversion décimale et non décimale -> Chaîne. –

+0

Est-il possible de garder les chiffres avec des décimales, plutôt afficher ",". Est-ce un paramètre universel? – Robert

+0

Où voulez-vous qu'ils montrent ","? Dans le programme client - probablement je suppose - lorsqu'il est transmis à SQL - certainement pas. –