[freetds] Status of UTF-8 support in 0.83 dev

Sebastien FLAESCH sf at 4js.com
Tue Aug 12 12:14:31 EDT 2008


Sorry forget previous post, had a configuration mistake...

Log shows now:

log.c:190:Starting log file for FreeTDS 0.83.dev.20080812
         on 2008-08-12 18:11:48 with debug flags 0x4fff.
iconv.c:197:names for ISO-8859-1: ISO-8859-1
iconv.c:197:names for UTF-8: UTF-8
iconv.c:197:names for UCS-2LE: UCS-2LE
iconv.c:197:names for UCS-2BE: UCS-2BE
iconv.c:363:iconv to convert client-side data to the "UTF-8" character set
iconv.c:516:tds_iconv_info_init: converting "UTF-8"->"UCS-2LE"
iconv.c:516:tds_iconv_info_init: converting "ISO-8859-1"->"UCS-2LE"


But still, I get:


Error -1 at: SQLExecute 1.2 StmtH
Diagnostic info:
   SQL State: 42000
   SQL code : 8005
   Message  : [FreeTDS][SQL Server]The incoming tabular data stream (TDS) remote procedure call (RPC) protocol stream is incorrect. Parameter 4: The 
parameter name is invalid.


Log attached...

Seb


Sebastien FLAESCH wrote:
> A TDSDUMP shows me the following:
> 
> log.c:190:Starting log file for FreeTDS 0.82RC4
>          on 2008-08-12 17:42:11 with debug flags 0x4fff.
> iconv.c:197:names for ISO-8859-1: ISO-8859-1
> iconv.c:197:names for UTF-8: UTF-8
> iconv.c:197:names for UCS-2LE: UCS-2LE
> iconv.c:197:names for UCS-2BE: UCS-2BE
> iconv.c:363:iconv to convert client-side data to the "ISO-8859-1" character set
> iconv.c:516:tds_iconv_info_init: converting "ISO-8859-1"->"UCS-2LE"
> iconv.c:516:tds_iconv_info_init: converting "ISO-8859-1"->"UCS-2LE"
> 
> ...
> 
> iconv.c:985:setting server single-byte charset to "CP932"
> iconv.c:516:tds_iconv_info_init: converting "ISO-8859-1"->"CP932"
> 
> 
> Does this mean that UTF-8 is not selected as client charset???
> 
> I have the following in my odbc.ini:
> 
> 
> [freetds_msvtest2_cobra]
> Driver          = /opt3/dbs/tds/0.83/lib/libtdsodbc.so
> Description     = msvtest2 database on cobra (multibyte)
> Trace           = No
> #Servername     = server2_utf8
> Server          = cobra
> Database        = msvtest2
> ClientCharset   = UTF8
> Port            = 1680
> TDS_Version     = 8.0
> 
> 
> 
> $ iconv -l | grep UTF8
> 
> ISO-10646/UTF8/
> UTF8//
> 
> 
> 
> Seb
> 
> Sebastien FLAESCH wrote:
>> With this other example (using SQL_CHAR / SQL_VARCHAR), I get this error:
>>
>> Error -1 at: SQLExecute 1.1 StmtH
>> Diagnostic info:
>>   SQL State: 42000
>>   SQL code : 8005
>>   Message  : [FreeTDS][SQL Server]The incoming tabular data stream (TDS) 
>> remote procedure call (RPC) protocol stream is incorrect. Parameter 4: 
>> The parameter name is invalid.
>>
>>
>> I think in a UTF-8 context it makes sense to bind with SQL_CHAR/SQL_VARCHAR
>> for the ParameterType argument (#5) of SQLBindParameter, and passing a 
>> number
>> of bytes in the ColumnSize (#6) and StrLen_or_IndPtr (#10) arguments...
>>
>> ?
>>
>> Seb
>>
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> FreeTDS mailing list
>> FreeTDS at lists.ibiblio.org
>> http://lists.ibiblio.org/mailman/listinfo/freetds
> 
> _______________________________________________
> FreeTDS mailing list
> FreeTDS at lists.ibiblio.org
> http://lists.ibiblio.org/mailman/listinfo/freetds
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: tds.log
Type: text/x-log
Size: 29346 bytes
Desc: not available
Url : http://lists.ibiblio.org/pipermail/freetds/attachments/20080812/7a462b7b/attachment-0001.bin 


More information about the FreeTDS mailing list