行変更タイム・スタンプ列の作成
行変更タイム・スタンプ列のある表内で行を追加したり変更したりするたびに、行変更タイム・スタンプ列の値は、挿入操作や更新操作の時点に対応するタイム・スタンプに設定されます。
行変更タイム・スタンプ列のデータ・タイプは TIMESTAMP でなければなりません。表に定義できる行変更タイム・スタンプ列は 1 つだけです。
表を作成するときは、表の中の 1 つの列を行変更タイム・スタンプ列として定義することができます。例えば、ORDERNO、SHIPPED_TO、ORDER_DATE、STATUS、および CHANGE_TS という名前の列を持つ表 ORDERS を作成します。CHANGE_TS を行変更タイム・スタンプ列として定義します。
CREATE TABLE ORDERS
(ORDERNO SMALLINT,
SHIPPED_TO VARCHAR(36),
ORDER_DATE DATE,
STATUS CHAR(1),
CHANGE_TS TIMESTAMP FOR EACH ROW ON UPDATE AS ROW CHANGE TIMESTAMP NOT NULL)
ORDERS 表に行を挿入する際に、その行に関する CHANGE_TS 列は挿入操作のタイム・スタンプに設定されます。ORDERS 内の行が更新されるたびに、その行に関する CHANGE_TS 列は、更新操作のタイム・スタンプを反映するように変更されます。
列から行変更タイム・スタンプ属性を除去できます。
ALTER TABLE ORDER
ALTER COLUMN CHANGE_TS
DROP ROW CHANGE TIMESTAMP
表内で列 CHANGE_TS は TIMESTAMP 列として残りますが、システムはこの列のタイム・スタンプ値を自動的に更新しなくなります。