DELETE DATABASEとSQL UDF - Advanced SQL Engine - Teradata Database

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

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

DELETE DATABASE文は、データベースに含まれるすべてのデータベース オブジェクトを削除します。他のデータベースまたはユーザー内に含まれるデータベース オブジェクトが削除したオブジェクトを参照していた場合、参照元のオブジェクトは有効でなくなります。

SQL UDFは、定義内で、UDTを含め、別のデータベース オブジェクトを参照できます。そのようなオブジェクトは、常に個別に、またはDELETE DATABASEリクエストを実行したときに集合的に削除できます。この場合、UDFは無効になります。逆に、SQL UDF自体はさまざまなデータベース オブジェクトによって参照できます。そのような関係のSQL UDFが削除された場合、またはそれが属するデータベースやユーザーが削除された場合、それらを参照するデータベース オブジェクトは有効性を失います。

例えば、データベースordersに、SQL UDFによって参照されるテーブルが含まれるデータベースdf2を持ち、何らかの理由で、ordersの内容を削除するとします。影響を受けたSQL UDFをリクエストが次に参照したとき、Teradata Databaseはリクエストをアボートし、リクエスト側にエラーを返します。