I have a Windows Forms application that accesses an Oracle Database through an ODBC connection. The problem is that the application doesn't recognize arabic characters from the DB (they are replaced with a '?' instead). I made another test application that connects directly to the Oracle DB and it worked fine (thats how I figured that ODBC was the problem). I even changed the system locale (from control panel -> Region), and in the ODBC settings I chose "use Microsoft Regionl Settings", but with no difference. Any help would be appreciated.
Asked
Active
Viewed 814 times
2
-
What encoding is used in the database itself? Can you show some sample code? – erg Dec 29 '15 at 12:54
-
I am using Toad and I am not sure how to get the database encoding. However Arabic characters do appear properly in Toad. – Abdullah Ayman Dec 29 '15 at 13:13
-
You need to look into NLS_LANG settings, both client-side and server/db_side. Add details from those settings where this might help to get you started: http://stackoverflow.com/q/24307580/578411 – rene Dec 29 '15 at 13:49
-
NLS_LANG: AMERICAN_AMERICA.WE8MSWIN1252. from regedit. I am testing on the same machine. – Abdullah Ayman Dec 29 '15 at 15:31
1 Answers
1
I figured it out. The columns in the database where set as VARCHAR2 where it should have been NVARCHAR2.

Abdullah Ayman
- 49
- 4