Converts strings between character sets.
CSCONVERT(
string-expression,
target-charset-string
[ , source-charset-string ] )
string-expression The string.
target-charset-string The destination character set. target-charset-string can be one of the following:
os_charset Alias for the character set used by the operating system.
char_charset Alias for the CHAR character set used by the database.
nchar_charset Alias for the NCHAR character set used by the database.
any other supported character set label You can specify any of the SQL Anywhere supported character set labels. For more information, see Supported character sets.
source-charset The character set used by the original string-expression. The default is db_charset (the database character set).source-charset-string can be one of the following:
os_charset Alias for the character set used by the operating system.
char_charset Alias for the CHAR character set used by the database.
nchar_charset Alias for the NCHAR character set used by the database.
any other supported character set label You can specify any of the SQL Anywhere supported character set labels. For more information, see Supported character sets.
SQL/2003 Vendor extension.
This fragment converts the mytext column from the Traditional Chinese character set to the Simplified Chinese character set:
SELECT CSCONVERT( mytext, 'cp936', 'cp950' ) FROM mytable;
This fragment converts the mytext column from the database character set to the Simplified Chinese character set:
SELECT CSCONVERT( mytext, 'cp936' ) FROM mytable;
If a file name is stored in the database, it is stored in the database's character set. If the server is going to read from or write to a file whose name is stored in a database (for example, in an external stored procedure), the file name must be explicitly converted to the operating system's character set before the file can be accessed. File names stored in the database and retrieved by the client are converted automatically to the client's character set, so explicit conversion is not necessary.
This fragment converts the value in the filename column from the database character set to the operating system character set:
SELECT CSCONVERT( filename, 'os_charset' ) FROM mytable;
A table contains a list of file names. An external stored procedure takes a file name from this table as a parameter and reads information directly out of that file. The following statement works when character set conversion is not required:
SELECT MYFUNC( filename ) FROM mytable;
where mytable is a table that contains a filename column. However, if you need to convert the file name to the character set of the operating system, you would use the following statement.
SELECT MYFUNC( csconvert( filename, 'os_charset' ) ) FROM mytable;