次のSQL文は通常の非テンポラル テーブルを作成し、行をいくつか挿入します。
CREATE MULTISET TABLE employee_vt ( eid INTEGER NOT NULL, ename VARCHAR(5) NOT NULL, terms VARCHAR(5), job_start DATE NOT NULL, job_end DATE NOT NULL ) PRIMARY INDEX(eid);
行が挿入された後に、修飾されていないSELECTをテーブルに実行すると、すべての行が返されます。
SELECT * FROM employee_systime; eid ename terms job_start job_end ---- ----- ----- ---------- ----------- 1002 Ash TA05 2003/01/01 2003/12/31 1005 Alice TW10 2004/12/01 2005/12/01 1010 Mike TW07 2015/01/01 2016/12/31 1005 Alice PW11 2005/12/01 9999/12/31 1001 Sania TW08 2002/01/01 2006/12/31 1004 Fred PW12 2001/05/01 9999/12/31 1003 SRK TM02 2004/02/10 2005/02/10
次のALTER TABLE文でテーブルをvalid-timeテンポラル テーブルに変換します。
ALTER TABLE employee_vt ADD PERIOD FOR job_dur(job_start,job_end) AS VALIDTIME;
system-timeテーブルと違って、valid-timeテーブルの非修飾SELECTでは、valid-time期間が過去か、現在か、将来かに関わらず、テーブル内のすべての行が表示されます。
SELECT * FROM employee_systime; eid ename terms job_start job_end ---- ----- ----- ---------- ----------- 1002 Ash TA05 2003/01/01 2003/12/31 1005 Alice TW10 2004/12/01 2005/12/01 1010 Mike TW07 2015/01/01 2016/12/31 1005 Alice PW11 2005/12/01 9999/12/31 1001 Sania TW08 2002/01/01 2006/12/31 1004 Fred PW12 2001/05/01 9999/12/31 1003 SRK TM02 2004/02/10 2005/02/09
SELECT問合わせ、およびUPDATE、DELETE変更でテンポラル修飾句を使用すると、valid-timeテーブルに自動テンポラル動作が明示されます。詳細については、ANSI Valid-Timeテーブルの問合わせとANSI Valid-Timeテーブルの行の変更を参照してください。