execute immediate 'select count(*) from '||:new.TableName ||'where orderDate>to_date('||:new.TableTime||' ,'YYYY-MM-DD')' into :new.Cnt;

解决方案 »

  1.   

    execute immediate 'select count(*) from '||:new.TableName into :new.Cnt ||'where orderDate>:v1' into :new.cnt using :new.TableTime;
      

  2.   

    execute immediate 'select count(*) from '||:new.TableName into :new.Cnt ||' where orderDate>:v1' into :new.cnt using :new.TableTime;
      

  3.   

    谢谢能解释一下 v1? using?小弟刚入门.
      

  4.   

    CREATE OR REPLACE TRIGGER Tri_TempA
    BEFORE INSERT 
    ON TempA
    FOR EACH ROW
    Declare 
       v_Cnt NUMBER;
    BEGIN
         execute immediate 'select count(*) from '|| :new.TableName ||' where orderDate>:v1' into :new.cnt using TRUNC(:new.TableTime,'DD');
    END Tri_DateCheck;
      

  5.   

    动态sql中的绑定变量,sql语句中的变量用 ':'+标识符占位,实际执行时,用using后面的变量来代替该占位符
      

  6.   

    经过不懈的努力,终于bobfang(匆匆过客)和qiaozhiwei(乔)的帮助下搞定了.谢谢大家指点迷津!
    结!