16.20 - ストアド プロシージャのDML文 - Teradata Vantage NewSQL Engine

Teradata Vantage™ SQL ストアド プロシージャおよび埋め込みSQL

prodname
Teradata Database
Teradata Vantage NewSQL Engine
vrm_release
16.20
category
プログラミング リファレンス
featnum
B035-1148-162K-JPN

サポートされているDML文

ストアド プロシージャ内では、以下のSQL DML文を使用できます。
  • ABORT
  • BEGIN TRANSACTION
  • END TRANSACTION
  • CALL
  • CLOSE
  • COLLECT STATISTICS(QCD形式)
  • COMMIT
  • DECLARE CURSOR(選択形式)
  • DELETE(すべての形式)
  • DROP STATISTICS(QCD形式)
  • FETCH
  • INSERT
  • MERGE
  • OPEN
  • ROLLBACK
  • SELECT (カーソルの場合のみ)
  • SELECT AND CONSUME TOP 1 (定位置カーソル内のみ)
  • SELECT INTO
  • SELECT AND CONSUME TOP 1 INTO
  • UPDATE (検索形式、定位置形式、およびアップサート形式のものを含む)

サポートされていないDML文

ストアド プロシージャ内では、以下のSQL DML文は使用できません。
  • CHECKPOINT
  • COLLECT DEMOGRAPHICS

SQL文の実行の制限

CREATE/REPLACE PROCEDURE文のSQL_data_access句では、ストアド プロシージャがSQL文を発行できるかどうか、どの種類のSQL文が発行できるのかを示します。SQL_data_access句のオプションは、次のとおりです。
オプション ストアド プロシージャが実行できるSQL文
CONTAINS SQL SQL制御文。ストアド プロシージャから、SQLデータの読み取り、または変更はできません。
READS SQL DATA FETCH文などの、SQLデータを読み取る文。ストアド プロシージャから、SQLデータの変更はできません。
MODIFIES SQL DATA UPDATE、INSERTまたはDELETE文など、ストアド プロシージャから呼び出し可能なすべてのSQL文。SQL_data_access句がCREATE/REPLACE PROCEDURE文に含まれていない場合は、これがデフォルトになります。
システムは、次に示す例外を返します。
オプション 試行内容 返されるメッセージ
CONTAINS SQL SQLデータの読み取りや変更。または、SQLデータの読み取りや変更を試行するプロシージャの呼び出し。 ‘2F004’ reading SQL-data not permitted。
READS SQL DATA SQLデータの変更。または、SQLデータの変更を試行するプロシージャの呼び出し。 ‘2F002’ modifying SQL-data not permitted。

関連トピック

以下に関する詳細な情報
  • DML文の詳細について、<Teradata Vantage™ SQLデータ操作言語、B035-1146>を参照してください。
  • SQL_data_access句の詳細については、<Teradata Vantage™ SQLデータ定義言語の構文規則および例、B035-1144>の「CREATE PROCEDURE(SQL形式)/REPLACE PROCEDURE」を参照してください。
  • SQL_data_access例外の詳細について、SQLコミュニケーション領域(SQLCA)のSQLCODEからSQLSTATEへのマッピングを参照してください。
  • サポートされているDML文の詳細について、<Teradata Vantage™ SQLデータ操作言語、B035-1146>を参照してください。