有一个表,会被不定时地插入数据,现在有个需求,需要定时从这个表里获取数据,期望得到的数据是“自上次获取后最新插入的”,但这个表本身没有任何字段可以作为依据,而且不能修改表。
现在请问,在这种情况下,还有没办法可以获取呢?
------解决思路----------------------
可以给表加触发器吗?
建立一个临时表,给原表增加触发器,原表插入数据同时插入临时表
获取数据时从临时表获取数据范围,临时表存储原表的主键和插入时间即可
每次获取数据处理完成后将将已经处理的数据从临时表中清除
------解决思路----------------------
可以通过表的伪劣ora_rowscn标识一条记录dml操作的时间,伪劣ora_rowscn可以和时间进行转换
SELECT SCN_TO_TIMESTAMP(13919238) FROM dual;
------解决思路----------------------
如果不能从这个表的字段来找参考,那么就只有通过建立临时表来实现了。
------解决思路----------------------
这方法不错,赞一个

------解决思路----------------------
但是这方法如果进行备份再通过数据文件进行恢复的话,这个伪列的值是不是应该就变了啊
------解决思路----------------------
可以建立临时表,通过触发器当数据更新时,将更新的数据插入临时表中存储
------解决思路----------------------
可以根据rowid进行判断