Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » SQL Anywhere サーバ - SQL リファレンス » SQL の使用 » SQL 関数 » SQL 関数 (A ~ D)

 

CSCONVERT 関数 [文字列]

文字列の文字セットを変換します。

構文
CSCONVERT( 
string-expression,
target-charset-string
[, source-charset-string ] [, options ] ])
パラメータ
  • string-expression   文字列。

  • target-charset-string   変換後の文字セット。target-charset-string には、次のいずれかを指定します。

    • os_charset   データベース・サーバをホストしているオペレーティング・システムが使用する文字セットのエイリアス。

    • char_charset   データベースが使用する CHAR 文字セットのエイリアス。

    • nchar_charset   データベースが使用する NCHAR 文字セットのエイリアス。

    • その他のサポートされた文字セット・ラベル   SQL Anywhere がサポートする任意の文字セット・ラベルを指定できます。

    • source-charset   元の string-expression で使用されている文字セット。デフォルトは db_charset (データベース側文字セット) です。source-charset-string には、次のいずれかを指定します。

      • os_charset   オペレーティング・システムが使用する文字セットのエイリアス。

      • char_charset   データベースが使用する CHAR 文字セットのエイリアス。

      • nchar_charset   データベースが使用する NCHAR 文字セットのエイリアス。

      • その他のサポートされた文字セット・ラベル   SQL Anywhere がサポートする任意の文字セット・ラベルを指定できます。

    • options   次のいずれかのオプションを指定できます。

      • BOM の読み込みまたは書き込み   デフォルトでは、値が read_bom= onwrite_bom=off に設定されます。値を read_bom=offwrite_bom=on に変更できます。

戻り値

LONG BINARY

備考

SQL Anywhere でサポートされている文字セットのリストを表示するには、次のコマンドを実行します。

dbinit -le

この関数で使用できる文字セット・ラベルの詳細については、サポートされている文字セットを参照してください。

参照
標準と互換性
  • SQL/2003   ベンダ拡張。

このフラグメントは、mytext カラムを繁体文字中国語文字セットから簡体文字中国語文字セットに変換します。

SELECT CSCONVERT( mytext, 'cp936', 'cp950' )
FROM mytable;

このフラグメントは、mytext カラムをデータベース側文字セットから簡体文字中国語文字セットに変換します。

SELECT CSCONVERT( mytext, 'cp936' )
FROM mytable;

ファイル名がデータベースに格納される場合は、そのデータベース側文字セットで格納されます。サーバが読み込みまたは書き込みを行うファイルの名前がデータベースに格納されている場合 (外部ストアド・プロシージャなど)、ファイル名をオペレーティング・システムの文字セットに明示的に変換してから、ファイルにアクセスしてください。データベースに格納されているファイル名をクライアントが取得する場合は、クライアントの文字セットに自動的に変換されるため、明示的な変換は必要ありません。

このフラグメントは、ファイル名カラムの値をデータベース側文字セットからオペレーティング・システムの文字セットに変換します。

SELECT CSCONVERT( filename, 'os_charset' )
FROM mytable;

ファイル名のリストが入っているテーブルがあります。外部ストアド・プロシージャは、このテーブルのファイル名をパラメータとして取り出し、そのファイルから直接情報を読み込みます。次の文は、文字セットの変換が必要ない場合に正しく動作します。

SELECT MYFUNC( filename )
FROM mytable;

mytable 句は、ファイル名カラムが含まれているテーブルを示します。ただし、ファイル名をオペレーティング・システムの文字セットに変換する必要がある場合は、次の文を使用します。

SELECT MYFUNC( csconvert( filename, 'os_charset' ) )
FROM mytable;