Search code examples
sqlsql-server-2005odbclotus-noteslotus

UNDEFINED data type when reading SQL database from Lotus Notes using ODBC: nvarchar


This is the second time it happens to me and before modifying a 3rd party Database structure I wanted to know if anyone knew a better solution:

I'm accessing a MS SQL Server 2008 from a Lotus Notes Agent (Notes 7) to retrieve some data. I use LSXODBC and my "Select" statement works perfect... Except that my agent cannot "understand" Nvarchar SQL Field types. Any other data types work ok (can get the values from number and dates fields without a problem).

It took me a while to figure it out, and I couldn't find a solution (other than modifying the field types on the SQL table to Varchar instead of nVarchar)

I could replicate this both in MS SQL 2005 and 2008.

Last "elegant" solution was to create an SQL view -instead of modifying table structure- with the varchar types instead of nvarchar. Works ok but I have to create a view for each table I'm retrieving data from.

I tried to set the Field type using FieldExpectedDataType Method but didn't work. Still got a DB_TYPE_UNDEFINED.

I thought there might be some configuration issues? or maybe I'm using an old LN Version / ODBC Driver version?

Any hint would be greatly appreciated.

Thank you in advance.

Diego


Solution

  • An old ODBC driver may not support unicode. It was not added until SQL Server 2000 (I'm fairly sure)