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

DROP FOREIGN TABLE (SQL)

外部テーブルを削除します。

Synopsis

DROP FOREIGN TABLE [ IF EXISTS ] table-name [ RESTRICT | CASCADE ]

引数

引数 説明
IF EXISTS オプションtable-name を持つ外部テーブルが存在しない場合に発生するエラーを抑制します。
table-name 削除する外部テーブルの名前。この名前は有効な識別子である必要があります。コマンドを正常に実行するには、この名前の外部テーブルが存在する必要があります。
RESTRICT オプション — ビューなどの SQL オブジェクトが外部テーブルで定義されている場合、その外部テーブルを削除すべきではないことを指定します。このオプションは既定の動作を提供します。
CASCADE オプション — 外部テーブルで定義されたオブジェクト (ビューなど) はすべて、外部テーブルと共に削除されることを指定します。

説明

DROP FOREIGN TABLE コマンドは、外部サーバから外部テーブルを削除します。

既定では、このコマンドはビューが関連付けられていない外部テーブルのみを削除します。RESTRICT キーワードを指定することで、この動作を明示的に適用できます。RESTRICT キーワードが暗黙的または明示的に指定されている場合、関連付けられているビューと共に外部テーブルを削除しようとすると、SQLCODE -321 エラーが生成されます。

CASCADE キーワードが指定されている場合、DROP FOREIGN TABLE はテーブルとテーブルに関連付けられているすべてのビューを正常に削除します。

外部テーブルを削除するには、以下の条件を満たす必要があります。

  • 外部テーブルが、現在のネームスペース内の外部サーバに存在している必要があります。存在しない外部テーブルを削除しようとすると、SQLCODE -30 エラーが生成されます。このエラーは、IF EXISTS キーワードを指定することで抑制できます。

  • 外部テーブルを削除するには、必要な特権を持っている必要があります。特権を持たずにテーブルを削除しようとすると、SQLCODE -99 エラーが生成されます。

以下の例では、オブジェクトが定義されていない外部テーブルを削除します。

DROP FOREIGN TABLE Example.MyTable RESTRICT

以下の例では、外部テーブルと外部テーブルに関連付けられているビューを削除します。

DROP FOREIGN TABLE Example.MyTable CASCADE

関連項目

FeedbackOpens in a new tab