2010-12-27 4 views
1

Je développe une application Windows qui doit insérer des données à partir d'un fichier MS Excel contenant beaucoup de données dans deux langues différentes, l'anglais et l'hindi. Je suis capable d'importer facilement les données en anglais, mais en important les données en hindi, je l'ai converti en un texte en anglais. J'utilise NVARCHAR comme type de données pour tous mes champs. Arial Font pour l'anglais et SHUSHA pour la langue hindi. Dans Excel, les données sont correctement affichées. Mais dans SSMS et mon application, les données en hindi sont montrées comme quelques caractères anglais.Données Hindi dans la base de données SQL Server 2005

Veuillez nous aider! NVARCHAR est définitivement capable de stocker des caractères Hindi Unicode.

+0

Comment importez-vous les données? Excel stocke le contenu de la cellule en tant que Unicode, mais certaines langues, par exemple Classic ASP, ne gèrent pas Unicode correctement? – Sparky

+0

J'utilise OleDbDataReader pour obtenir des données du fichier Excel. puis en remplissant la ligne de la table sql sage. – macsys

Répondre

1

Il doit y avoir quelque chose de mal avec votre code d'insertion SQL, c'est-à-dire que vous utilisez peut-être un SqlParameter avec le type de données SqlDbType.VarChar lorsque vous insérez. L'affichage de ce code clarifierait.

+0

Je lis les données d'Excel en utilisant OleDbDataReader. puis en mettant les données dans chaque champ dans différentes variables et en insérant l'enregistrement dans la table SQL en utilisant ces variables. – macsys

+0

Je l'ai, je dois préfixer N avant chaque donnée que j'ai besoin d'insérer dans les tables. Mais encore une fois, j'ai un problème étrange. Sous Windows 7, SSMS et My application affichent les données Hindi au format correct. Mais quand j'utilise Win XP, seules les boîtes sont affichées partout à la place des données Hinid. Pouvez-vous aider! – macsys

+0

Et si vous essayez "Résultats au texte" dans SSMS? J'ai remarqué que c'est plus fiable pour afficher les caractères Unicode. Pas certain de pourquoi. Peut-être qu'il utilise une police différente? –

Questions connexes