情景一:表已存在,未使用aging 属性
create table YTEXP.T_a (
"ID" NUMBER(10) not null,
TNAME VARCHAR2(20 BYTE) INLINE,
V_DATE TIMESTAMP(6) not null ,
primary key (id)
) ;
属性启用:
--- alter table ytexp.t_a add aging use v_date lifetime 30 second cycle 1 SECOND on ;
--- 注: 对于aging 列必须不能为null ,且这个列不能是后续通过alter table 语句加进来的,必须是建表的时候就指定的
---插入数据测试
insert into t_a values (1,'aaa',sysdate);
insert into t_a values (2,'bbb',sysdate);
insert into t_a values (3,'ccc',sysdate);
insert into t_a values (4,'ddd',sysdate);
commit;
结果:30s 后数据被刷出去
create table YTEXP.T_b (
"ID" NUMBER(10) not null,
TNAME VARCHAR2(20 BYTE) INLINE,
V_DATE TIMESTAMP(6) not null ,
primary key (id)
)
AGING USE V_DATE LIFETIME 30 SECOND CYCLE 1 SECOND ON ;
--插入数据:
insert into t_b values (1,'aaa',sysdate);
insert into t_b values (2,'bbb',sysdate);
insert into t_b values (3,'ccc',sysdate);
insert into t_b values (4,'ddd',sysdate);
commit;
---查询 select * from t_b ;
---结果:30s 后数据被刷出去
create table YTEXP.T_a (
"ID" NUMBER(10) not null,
TNAME VARCHAR2(20 BYTE) INLINE,
V_DATE TIMESTAMP(6) not null ,
primary key (id)
) ;
属性启用:
--- alter table ytexp.t_a add aging use v_date lifetime 30 second cycle 1 SECOND on ;
--- 注: 对于aging 列必须不能为null ,且这个列不能是后续通过alter table 语句加进来的,必须是建表的时候就指定的
---插入数据测试
insert into t_a values (1,'aaa',sysdate);
insert into t_a values (2,'bbb',sysdate);
insert into t_a values (3,'ccc',sysdate);
insert into t_a values (4,'ddd',sysdate);
commit;
结果:30s 后数据被刷出去
语法:
ALTER TABLE [Owner.]TableName
ADD AGING USE ColumnName LIFETIME num1
{SECOND[S] | MINUTE[S] | HOUR[S] | DAY[S]}
[CYCLE num2 {SECOND[S] | MINUTE[S] | HOUR[S] | DAY[S] }]
[ON | OFF]
create table YTEXP.T_b (
"ID" NUMBER(10) not null,
TNAME VARCHAR2(20 BYTE) INLINE,
V_DATE TIMESTAMP(6) not null ,
primary key (id)
)
AGING USE V_DATE LIFETIME 30 SECOND CYCLE 1 SECOND ON ;
--插入数据:
insert into t_b values (1,'aaa',sysdate);
insert into t_b values (2,'bbb',sysdate);
insert into t_b values (3,'ccc',sysdate);
insert into t_b values (4,'ddd',sysdate);
commit;
---查询 select * from t_b ;
---结果:30s 后数据被刷出去