ALTER FOREIGN TABLE (SQL)
構文
ALTER FOREIGN TABLE table-name ALTER [ COLUMN ] old-name
RENAME new-name
ALTER FOREIGN TABLE table-name MODIFY old-name
RENAME new-name, old-name2 RENAME new-name2, ...
ALTER FOREIGN TABLE table-name ALTER [ COLUMN ] old-name
RENAME new-name VALUES ( external-name )
ALTER FOREIGN TABLE table-name MODIFY old-name
RENAME new-name, old-name2 RENAME new-name2, ...
VALUES ( newexternal-name, newexternal-name2, ... )
ALTER FOREIGN TABLE table-name ALTER col-name datatype
ALTER FOREIGN TABLE table-name MODIFY col-name datatype
{, col-name datatype ...}
引数
引数 | 説明 |
---|---|
table-name | 変更する外部テーブルの名前。有効な識別子を指定します。このコマンドを発行する前に、この引数値が、外部サーバに存在する外部テーブルの名前であることを確認します。 |
old-name | InterSystems IRIS で変更する現在の列名。有効な識別子を指定します。このコマンドを発行する前に、この引数値が、外部テーブルに存在する列の名前に対応していることを確認します。 |
new-name | InterSystems IRIS での新しい列名。有効な識別子を指定します。 |
external-name | RENAME 節で対応する列にデータを投影する、外部データ・ソースの列の新しい名前。 |
col-name | 新しいデータ型に変換される列の名前。有効な識別子を指定します。このコマンドを発行する前に、この引数値が、外部テーブルに存在する列の名前に対応していることを確認します。 |
dataype | 列の新しいデータ型。有効な SQL データ型であることが必要です。 |
説明
ALTER FOREIGN TABLE コマンドは、外部テーブル定義を変更します。目的のテーブルに適用できる変更のタイプとして次の 2 つがあります。
-
1 つの列の名前または列のリストにある列の名前を変更します。
-
列のデータ型または列のリストにある列のデータ型を変更します。
列名の変更
ALTER FOREIGN TABLE コマンドを使用して、外部テーブルにある 1 つの列の名前または外部テーブルの列のリストにある列の名前を変更できます。
以下の 2 つのバリエーションがあります。
-
ALTER FOREIGN TABLE table-name ALTER [ COLUMN ] old-name RENAME new-name :外部テーブルにある 1 つの列の名前を old-name から new-name に変更します。
-
ALTER FOREIGN TABLE table-name MODIFY old-name RENAME new-name :外部テーブルにある 1 つ以上の列の名前を、それぞれの old-name からそれに対応する new-name に変更します。
-
ALTER FOREIGN TABLE table-name ALTER [ COLUMN ] old-name RENAME new-name VALUES ( external-name ) :外部テーブルにある 1 つの列の名前を old-name から new-name に変更します。このバリエーションでは、指定した列にデータを投影する、外部データ・ソースの列の名前も変更されます。
-
ALTER FOREIGN TABLE table-name MODIFY old-name RENAME new-name, old-name2 RENAME new-name2 VALUES ( external-name, external-name2 ) :外部テーブルにある一連の列の名前を、old-name からそれに対応する new-name に変更します。このバリエーションでは、指定した複数列にデータを投影する、外部データ・ソースの複数列の名前も変更されます。
列のデータ型の変更
ALTER FOREIGN TABLE コマンドを使用して、外部テーブルにある 1 つの列のデータ型または外部テーブルの列のリストにある列のデータ型を変換できます。新しいデータ型は、InterSystems SQL の有効なデータ型とする必要があります。
この変更によってストリーム・データ型がストリームではないデータ型になる場合、またはストリームではないデータ型がストリーム・データ型になる場合、その列のデータ型は変更できません。そのようにしようとすると SQLCODE -374 エラーが返されます。
以下の 2 つのバリエーションがあります。
-
ALTER FOREIGN TABLE table-name ALTER col-name datatype :1 つの列のデータ型を変更します。
-
ALTER FOREIGN TABLE table-name MODIFY col-name datatype {, col-name datatype ...} :1 つ以上の列のデータ型を変更します。列ごとに異なるデータ型を指定できます。
例
以下の例では、外部テーブル Sample.Person の LastName 列の名前を変更します。このコマンドの ALTER 形式と MODIFY 形式の両方を使用しています。
ALTER FOREIGN TABLE Sample.Person ALTER COLUMN LastName RENAME Surname
ALTER FOREIGN TABLE Sample.Person MODIFY LastName RENAME FamilyName, FirstName RENAME GivenName
以下の例では、外部テーブル Sample.Account の Amount 列のデータ型を変更します。このコマンドの ALTER 形式と MODIFY 形式の両方を使用しています。
ALTER FOREIGN TABLE Sample.Person ALTER Amount INTEGER
ALTER FOREIGN TABLE Sample.Person MODIFY Amount INTEGER