MS SQL Server Unicode Support

From: Dov Rosenberg (drosenber..nquira.com)
Date: Tue Sep 19 2006 - 17:12:03 EDT

  • Next message: Tore Halset: "Re: MS SQL Server Unicode Support"

    We are using Cayenne for some web services alongside our EOF based
    application. Our application supports unicode formatted characters in the
    database but in order to support it properly using MS SQL Server apparently
    we need to change our data types from char, varchar, text to nchar,
    nvarcahr, ntext. This is no big deal. However in order to properly store the
    data into those fields and to be able to query against them we need to
    preface all of the strings with a N ­ this signals MSSQL Server to use the
    Unicode encoding for that column. For example say we have a table:

    CREATE TABLE "CONTENTDATA" (
        RECORDID NVARCHAR(64) NOT NULL ,
        XML NTEXT NULL ,
        CONSTRAINT PK_CONTENTDATA PRIMARY KEY (RECORDID)
    );

    In order to insert unicode characters into that table I need to generate a
    SQL statement like:

    INSERT into CONTENTDATA (RECORDID, XML) values (Ną1234ABCą,
    Ną<MYXML>....</MYXML>ą);

    Notice the N in front of the strings I am inserting. In order to query on
    this table properly I need to add the N in front of the WHERE clause pieces
    such as:

    SELECT * from CONTENTDATA where xml like Ną<MYXML>%ą;

    I only need to put the N when the data contains unicode characters ­ but I
    really wonąt know that so I probably need to do it all of the time.

    I am looking for the correct place in both cayenne and EOF to add the Ną to
    the queries (INSERTs, and WHERE clauses). Any help or suggestions would be
    HIGHLY appreciated.

    BTW ­ it seems that Oracle can at least tolerate this unusual SQL format.
    MSFT says that it is SQL 92 compliant but I havenąt found anything
    documenting it yet.

    -- 
    Dov Rosenberg
    Conviveon/Inquira
    Knowledge Management Experts
    http://www.conviveon.com
    http://www.inquira.com
    



    This archive was generated by hypermail 2.0.0 : Tue Sep 19 2006 - 17:12:22 EDT