通过job 定时调用 存储过程,来监测 是否 应当修改视图,如果需要
则通过 create or replace view v_name as ... 动态创建视图虽然达不到 时刻同步,但也接近同步了。

解决方案 »

  1.   

    我不需要插入到表中,因为这条语句是用来直接嵌入到jsp语句中,所以尽量想方便使用sql,而不想加入过多复杂的控制。
      

  2.   

    单纯的sql,真的作不了么?这个问题困扰我很久了,还望高手共同探讨!
      

  3.   

    单纯SQL语句做不了,用函数就可以。
      

  4.   

    由于你的表是动态的,所以肯定要用动态sql语句才能解决
      

  5.   

    楼上的,动态sql语句怎么做呢?能否告知一二。
      

  6.   

    动态处理的基本思路:
    create or replace procedure test_procedure as
      v_count number(2) :=0;
      i       number:=0;
      v_sqlstring  varchar2(1024);
      begin
      v_sqlstring :='select * from( select name';
      select count(*) into v_count from test_0 ;
      for i in 1..v_count-1
      loop
        v_sqlstring :=v_sqlstring||',lead(name,'||i||',0)over(order by id)';
      end loop;
        v_sqlstring :=v_sqlstring||'from test_0) where rownum=1';
       execute immediate v_sqlstring;
      end;
    最后的那个v_sqlstring 就是你要的语句。