イベントテーブルの操作

イベントテーブルに対してテーブル操作のサブセットを実行できます。イベントテーブルは、イベントをキャプチャするために特別に設計されています。このトピックのセクションでは、イベントテーブルがサポートする操作について説明します。

注釈

このトピックで説明されているように、デフォルトのイベント・テーブルでは、ここに列挙されている操作のサブセットしか実行できません。

イベントテーブルでサポートされる操作

イベント・テーブルは、イベントをキャプチャするために特別に設計されています。イベントテーブルはイベントのキャプチャ専用に設計されているため、テーブルでは実行できる一部の操作が、イベントテーブルでは実行できません。

イベント・テーブルを使用すると、以下の操作を実行できます(デフォルトのイベント・テーブルの例外に注意):

操作

デフォルトのイベントテーブルのサポート

ユーザー作成イベント・テーブルのサポート

SHOW EVENT TABLES

DESCRIBE EVENT TABLE

SELECT

DROP TABLE

UNDROP TABLE

CREATE TABLE

TRUNCATE TABLE

DELETE

ALTER TABLE (イベントテーブル)

✔ (名前の変更は非対応)

イベントテーブルからの行の削除

イベントテーブルから行を削除する必要がある場合は、次のコマンドを使用できます。

  • イベントテーブルからすべての行を削除するには、 TRUNCATE TABLE を使用します。

  • 選択した行をイベントテーブルから削除するには、 DELETE を使用します。

    より複雑なログ保持ポリシーを実装する必要がある場合(例: 一部の関数のログを他の関数のログよりも長期間保持する必要がある場合)は、これを使用できます。

イベントテーブルのパラメーター

次のパラメーターを使用して、ハンドラーコードによるイベントテーブルの使用方法を指定できます。

EVENT_TABLE

このアカウントのストアドプロシージャと UDFs からのメッセージをログするためのイベントテーブルの名前を指定します。参照情報については、 EVENT_TABLE をご参照ください。

LOG_LEVEL

インジェストされ、アクティブなイベントテーブルで使用できるようにするメッセージの重大度レベルを指定します。指定されたレベル(およびそれよりも重大なレベル)のメッセージがインジェストされます。詳細については、 LOG_LEVEL および ロギング、メトリクス、トレースのレベル設定 をご参照ください。

METRIC_LEVEL

メトリック・データを取り込み、アクティブ・イベント・テーブルで利用可能にするかどうかを指定します。詳細については、 METRIC_LEVEL および ロギング、メトリクス、トレースのレベル設定 をご参照ください。

TRACE_LEVEL

インジェストされ、アクティブなイベントテーブルで使用できるようにするトレースイベントの詳細度を指定します。指定したレベルのイベントがインジェストされます。詳細については、 TRACE_LEVEL および ロギング、メトリクス、トレースのレベル設定 をご参照ください。

イベントテーブルのアクセス制御権限

グローバルおよびイベントテーブルスコープの権限を使用して、イベントテーブルの操作へのアクセスを管理できます。

詳細については、 イベントテーブル権限グローバル権限(アカウントレベルの権限) のログレベル権限をご参照ください。

イベントテーブルデータへのアクセスの管理

イベントテーブルデータをさまざまなユーザーやロールが利用できるようにすることが現実的でない場合は、特定のロールを持つユーザーがアクセスできるビューを作成できます。

この単一のテーブル内にあるデータへのアクセスを管理する場合は、イベントテーブルにビューを作成し、各ビューに対するアクセスを個別のロールに付与します。ビューを通じて、ロールはイベントテーブル内のデータの指定されたサブセットにアクセスできる場合があります。

ビューの作成の詳細については、 CREATE VIEW をご参照ください。

ストリームを使用したイベントテーブルへの変更の追跡

イベントテーブルにストリームを作成して、テーブルへの変更をキャプチャすることができます。

ストリームの詳細については、 ストリームの紹介 および CREATE STREAM をご参照ください。

次の例のコードは、イベントテーブル my_event_table での挿入をキャプチャするストリームを作成します。

CREATE STREAM append_only_comparison ON EVENT TABLE my_event_table APPEND_ONLY=TRUE;
Copy