SQLプロシージャでサポートされないDDL文 - 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

次のDDL文は、SQLプロシージャで指定できません。

  • ALTER CONSTRAINT
  • ALTER METHOD
  • ALTER PROCEDURE
  • ALTER TYPE
  • BEGIN QUERY LOGGING
  • CREATE CONSTRAINT
  • CREATE GLOP SET
  • CREATE METHOD
  • CREATE PROCEDURE
  • CREATE TABLE(キュー テーブルおよびトレース テーブル形式)
  • CREATE TYPE(すべての形式)
  • DATABASE
  • DROP CONSTRAINT
  • DROP GLOP SET
  • DROP TYPE
  • END QUERY LOGGING
  • FLUSH QUERY LOGGING
  • HELP(すべての形式)
  • REPLACE METHOD
  • REPLACE PROCEDURE
  • REPLACE QUERY LOGGING
  • REPLACE TYPE
  • SET QUERY_BAND … FOR SESSION
  • SET ROLE
  • SET SESSION(すべての形式)
  • SET TIME ZONE
  • SHOW(すべての形式)

行レベル セキュリティ制約の任意の部分を管理するSQLプロシージャ内のDDL文も指定できません。

上記の文は、CREATE PROCEDUREまたはREPLACE PROCEDURE DDL SQLテキスト内での指定が制限されていますが、プロシージャ定義内から動的SQLとして呼び出すことは制限されてない。動的SQLリクエストは、それを含むプロシージャのコンパイル時ではなく、実行時に解析され、バインドされます。そのため、コンパイル時のプロシージャは、コンパイル済みのプロシージャからSQLリクエストを実行するときに従う必要があるルールとは別のルールに従います。スタンドアロンの動的SQLとして呼び出すことができるSQL文は、プロシージャ定義内からも動的SQLとして呼び出すことができます。