DML文の行数のログ - Teradata Database - Teradata Vantage NewSQL Engine - DML文の行数のログ

Teradata Vantage™ SQLデータ操作言語

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Published
2019年3月
Language
日本語
Last Update
2019-10-29
dita:mapPath
ja-JP/fbo1512081269404.ditamap
dita:ditavalPath
ja-JP/fbo1512081269404.ditaval
dita:id
B035-1146
Product Category
Software
Teradata Vantage

BEGIN QUERY LOGGINGを指定すると、DBQLogTblのDML文の行数を単一または複数文リクエストに対して記録できます。 <Teradata Vantage™ SQLデータ定義言語 - 構文規則および例、B035-1144>の「BEGIN QUERY LOGGING」を参照してください。

挿入、更新、および削除の各操作の行数は、DBC.QryLogVビューとDBC.QryLogV_SZセキュリティ ゾーン ビューのStmtDMLRowCount列に記録されます(ストアド プロシージャ、外部ストアド プロシージャ、Teradata Parallel Transporter、MultiLoad、およびFastLoad操作を含む)。数はJSON形式で格納されます。JSON関数を使用して、ビューからデータを抽出できます。 <Teradata Vantage™ JSONデータ型、B035-1150>を参照してください。

例: DML操作の行数の表示

この例のテーブル定義は、次のとおりです。

CREATE TABLE t1 (a1 INTEGER, b1 INTEGER, c1 INTEGER);

クエリーのロギングを開始するには、この文を使用します。

BEGIN QUERY LOGGING ON ALL;

次の文は、挿入、更新、および削除の各操作を実行します。

INSERT INTO t1 VALUES (1,2,3);
UPDATE t1 SET C1 = 10;
DELETE FROM t1;

この文は、クエリーのロギングを終了します。

END QUERY LOGGING ON ALL;

ここで、DBCデータベース内のQryLogVビューのStmtDMLRowCount列を照会して、変更された行の数を表示することができます。

SELECT StmtDMLRowCount FROM DBC.QryLogV;
StmtDMLRowCount
---------------------------------------
{"Insert":1}
{"Update":1}
{"Delete":1}