用delphi7做了个程序 ,对oracle数据表进行大量数据的操作。1.我想知道oracle是否有监听其数据表的接口?比如:监听数据表的 添加、编辑、删除2.如果有这种接口,用delphi7 如何实现这个功能?(大概描述一下就行)3.如果没有。有什么其他的替代方案?
4.顺便问一下,对大量数据操作,使用多线程技术是否可以提高效率?
a表数据-程序处理-b表数据 
流程是:a表数据经过程序处理然后插入b表中。
数据量很大。数据一条一条滚动处理,很浪费时间。
如果使用多线程技术,是否可以多条同时处理。提高效率???

解决方案 »

  1.   

    1.触发器
    2.好象是可以的,具体如何操作,没做过研究,以前都只使用MSSQL
      

  2.   

    如果有可以直接操控oracle数据库的权限,建议使用触发器,几行代码搞定。
    否则,可能是废话了,如何插入B表?哈哈
      

  3.   

    谢谢大家的回复,还是些不清楚。
    可以简单说一下。delphi调用触发器监听数据表的流程吗?另外第四个问题是关于多线程的,哪位大侠明白,说两句。
      

  4.   

    补充一句,假如我对表a建立了一个触发器,那么表a的动作触发器了解,并作出了一些反映。那我的delphi程序 如何和触发器沟通,如何了解这些反映结果?
      

  5.   

    不需要Delphi了,除非你想做其他的工作,可以使用TTimer控件,设置一个足够短的时间片,采用时间轮询的方法。但,强烈建议在b表上轮询,否则会对A表的原始数据造成丢失。
      

  6.   

    可能是我没有描述清楚。我必须使用delphi程序。因为程序中有许多处理字段的逻辑在里面。我只是想知道,触发器监听了数据表的变化后,我的delphi程序如何才能知道。触发器和delphi之间是如何发送讯息的。
      

  7.   

    把相关的业务逻辑全部写在触发器里应该是最高效的,如果非要和delphi通信息还是建一个信息表,触发器写表delphi查询这个信息表,这样比查数据表要快得多。
      

  8.   

    把触发器的结果写在一个日志表中,delphi去扫描这个表进行查看
      

  9.   

    你是说用 timer 不断的查询日志表????