建议你把
sql_statement :=' INSERT INTO EMP001  VALUES (' || i || ' ,''name'' ,''job'' ,100 ,
  TO_DATE(''2002-10-16'', ''dd-Mon-yyyy HH:MI:SS AM'') ,100 ,100 ,100  )';重新分成几个变量拼一下。

解决方案 »

  1.   

    insert的时候最好把字段列出来
      

  2.   

    问题出在你的execute immediate的using字句,在你的sql语句中并没有要使用变量,即并没有占位符的出现,但你又用了using 字句。检查一下是否哪个本应该是占位符的而少写了‘:’。
    使用占位符的本地动态SQL示例:
    execute immediate 'insert into table (fields1) values (:a)' using v_localvariable.
    最后在说一句,你做的insert没有commit or rollback,会出现资源被锁。