Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

ALTER FOREIGN TABLE (SQL)

外部テーブル定義を変更します。

Synopsis

列名の変更

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 に変更します。このバリエーションでは、指定した複数列にデータを投影する、外部データ・ソースの複数列の名前も変更されます。

Note:

ALTER FOREIGN TABLE コマンドで 1 つまたは複数の列の名前を変更することはお勧めしません。外部テーブルは他のソースにあるデータの投影にすぎません。したがって、外部データ・ソースの内容を大幅に変更する場合は、このコマンドを使用するのではなく、外部テーブルを削除し、データベースまたは .csv ファイルを編集したうえで外部テーブルを再作成します。

列のデータ型の変更

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 

関連項目

FeedbackOpens in a new tab