用于从C#监视Oracle数据库中最后一次插入/更新的代码段?

用于从C#监视Oracle数据库中最后一次插入/更新的代码段?,c#,.net,oracle,C#,.net,Oracle,我正在寻找一个简单的C代码示例片段,用于监视Oracle数据库并基本检查其上次更新。它可以是命令行(非常适合将来与Nagios集成)或GUI。我已经做了一些原型,但是代码会变得很长,因为我还在学习语言 任何建议/意见都将不胜感激。一种可能的解决方案是: 将表示上次更新时间的日期字段添加到MY_表中 ALTER TABLE my\u TABLE ADD(上次更新时间日期) 在该字段上创建索引 在我的表上创建索引我的表更新时间(上次更新时间) 在该表上创建一个数据库触发器,该触发器在更新和插入时触发

我正在寻找一个简单的C代码示例片段,用于监视Oracle数据库并基本检查其上次更新。它可以是命令行(非常适合将来与Nagios集成)或GUI。我已经做了一些原型,但是代码会变得很长,因为我还在学习语言


任何建议/意见都将不胜感激。

一种可能的解决方案是:

  • 将表示上次更新时间的日期字段添加到MY_表中

    ALTER TABLE my\u TABLE ADD(上次更新时间日期)

  • 在该字段上创建索引

    在我的表上创建索引我的表更新时间(上次更新时间)

  • 在该表上创建一个数据库触发器,该触发器在更新和插入时触发,并将SYSDATE存储到新字段中

    CREATE OR REPLACE TRIGGER my_table_insert_trg  
    BEFORE INSERT OR UPDATE  
    ON my_table  
    FOR EACH ROW  
    BEGIN  
       :new.last_update_time := SYSDATE;  
    END;  
    
  • 现在,您可以每5分钟发出一次以下查询

    SELECT max(last_update_time) FROM my_table;
    
    它将为您提供上次更新表的时间


    很抱歉,要从Oracle获得通知并不容易。

    @Lord Burner:当然,先生,我需要监视一组表,有些应用程序会在其中插入记录,而且由于数据本身具有某种描述性,因此我可以使用相对简单的select语句进行检查。我想关键是播放时间戳和最后更新记录。