[frs-166] My SQL string queries and binary conversions stop working when the JDBC Wrapper is installed

Problem

This problem is caused by the Macromedia SQL Server driver handling string data as Unicode by default.

Unicode is a character representation system which aims to encompass most (if not all) of the world's writing systems in one coherent structure. It was introduced to work around the limitations of smaller character representations like ASCII, EBCDIC and Code Pages.

Unicode is in some ways compatible with ASCII, but when data is transferred or transformed, errors can occur. Database data which was previous stored in ASCII or another earlier format must be handled correctly.

Solution

When using SQL Server (and other drivers), ColdFusion applies a configuration parameter 'behind the scenes', which you must manually apply when using the JDBC Driver Wrapper.

The parameter is:

sendStringParametersAsUnicode=false

This should be applied inside the wrapped driver URL (found in the CF Administrator -> Datasource -> JDBC URL), as follows:

jdbc:fusionreactor:wrapper:{jdbc:macromedia:sqlserver://MACHINE_NAME;databaseName=DB_NAME;sendStringParametersAsUnicode=false}

Issue Details

Type: Technote
Issue Number: FRS-166
Components: JDBC
Environment:
Resolution: Fixed
Last Updated: 08/Aug/07 12:29 PM
Affects Version: 1.0, 2.0, 2.0.3, 2.0.4, 3.0
Fixed Version:
Server:
Platform:
Related Issues:

Comments are closed.