[ABD v8i SS5 Native C] Querying multi-byte languages from database


To be able to query a database table's content we are using mdlDB_openCursorWithID() and mdlDB_fetchRowByID() functions along with MS_sqlda structure. But it returns (char *) data type as query result which is limited to 255 ASCII characters. But for multi-byte languages like Japanese, Korean and Arabic, we need the query result as MSWChar data type to support Unicode characters. Is there any solution to this?

Kind regards,

Sedat Alis
AEC Technology Inc.

Parents Reply
  • Hi ,

    I am tagging to see if he has or knows of any code examples (or issues) related to Reading and Writing UNICODE values between MicroStation and Microsoft Access Databases.  I presume he may have his own experience(s) to pass along or some old code snips that may help.

    Unfortunately I am on an English only Windows and locale so I can only provide some quick research feedback along the lines of what Jan and Jon have suggested.  Try to remove MicroStation from the picture first and ensuring straight Microsoft code, SQL statements and (driver and connection settings) options can produce the desired results first.  Then attempt to run those same steps in MicroStation (straight SQL calls as a test first) then more specific MDL database calls next; helping ensure each incremental step in complexity succeeds, or can be proven to have a problem/recommendation needed next.

    My quick look for "microsoft access unicode sql code examples" produced these two points I believe are worth testing and considering; when first testing with Microsoft code...:

    • Test and/or Microsoft Access Database Unicode Compression if found to be contributing to the problem. (Ref 1, Ref 2)
    • If using a generic ODBC driver for mdb, use or install Microsoft Access specific/optimized versions for better results and/or performance.

    Please let us know your results using Microsoft APIs and SQL (w/options).  Hopefully that (or YongAn's input) can help resolve the issue, or provide a more specific are to identify and troubleshoot.


No Data