如果一个视图的列来自一个基表,可以通过对该视图执行insert、update、delete等DML操作,实现对基表的更新;如果一个视图的列来自多个基表,可以通过在该视图上建立一个instead of trigger;从而通过trigger的方式实现“在视图上做insert、update、delete等DML操作,实现对多个基表的更新”。我现在想问的是,对于一个列来自多个基表的视图,怎样通过某种机制(trigger或其他什么方法,但最好是实时触发的),实现对视图数据的实时监测,若视图某列数据有变化,则触发某操作?(物化视图是不是可以做到这点那?)谢谢大家。
解决方案 »
- 如何将.net传入的一个数据集批量插入我的临时表中,急!!!
- 帮助优化下语句八十万数据量
- oracle字符集更改设置,请教各位?
- 关于大数据更新控制提交点的问题
- 如何把数据在二个结构基本相同的表之间传导
- 如何解决ORA-20000: ORU-10027: buffer overflow, limit of 2000 bytes?
- 如何纪录错误日志
- 在oracle中创建java时报java已经被创建但是编译出错,大家来看看。再线等
- 请教:在linux安装的oracle817的问题,我在/u01下安装可以,为什么更好目录就不行?
- 如何得到当前登录用户(非DBA)的某个表的所有字段呢?
- oracle 循环问题
- 请教关于用c语言访问Oracle的问题
Only INSTEAD OF triggers can be created on a view.而INSTEAD OF trigger的使用,正如我上面所说,是用来对多基表的联接视图做DML。我现在的问题是,怎么样在视图数据发生变动时(也即基表数据发生变动时,因为视图展现的就是基表的数据嘛),在视图上通过某种机制触发某种操作,而不是怎么样在视图上做DML。