SQLリクエストでのSQL NameまたはSQL Titleの値の使用 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 詳細トピック

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
2020年6月
Language
日本語
Last Update
2021-03-30
dita:mapPath
ja-JP/jpx1556733107962.ditamap
dita:ditavalPath
ja-JP/jpx1556733107962.ditaval
dita:id
B035-1184
Product Category
Software
Teradata Vantage

データ ディクショナリ表現を直接使用できない場合は(セッション文字セットですべての文字が利用できるとは限らないため)、SQLリクエストでオブジェクトのSQL NameまたはSQL Titleを使用できます。

例えば、以下のようにHELP DATABASEを使用して、mydbデータベースで削除対象のテーブルの名前を調べることができます。

HELP DATABASE mydb;
… Table SQL Name U&"table_\4E00_name"
   Table UEscape		 \ 

HELP DATABASE文から返されるSQL Nameは、UNICODEで区切られた識別子です。この識別子には、システムによって\4E00と表記される変換不可の文字が含まれます。

SQL NameのUNICODEで区切られた識別子をSQLリクエストの一部として使用する場合は、以下の手順に従ってください。

  1. SQL Nameフィールドから取得されたテーブル名に終了UEscape句を追加します。
  2. 区切り文字( \ )を指定します。

例:

Drop Table U&"table_\4E00_name" UEscape '\';

SQL NameがUNICODEで区切られた識別子でない場合は、UEscape句と区切り文字を指定しなくても、HELP出力に表示される名前をそのままSQLリクエストで使用できます。