问题是下面的SQL语句在PLSQL下顺利执行通过,但是在程序中通过JDBC执行时就出现错误,提示是SQL命令未正确结束,调试了半天也不知道怎么回事,然后把下面语句放在存储过程中,再让程序是执行存储过程却又顺利通过,大家有没有遇到同样的问题,请指教下面语句的模型就是insert into select
下面是具体代码:insert into forbidden_employee(id,forbidden_employee_name,forbidden_employee_id,forbidden_employee_sex,forbidden_employee_bir,forbidden_employee_hu_ji,forbidden_employee_edu,forbidden_employee_addr,zan_zhu_id,image,image_name,sure_desc,note,insert_worker) select SEQ_forbidden_employee_ID.Nextval,a.personnel_name,a.personnel_cardid,a.sex,a.birthday,(select xzqu_note from xzqu where xzqu_code=a.county_code),(select edu_note from edu where edu_code=a.edu),a.address,a.zan_zhu_code,a.face_image,a.face_image_name,'','从业人员审核为不可从业人员','system' from personnel a where a.personnel_id=81

解决方案 »

  1.   

    你把 insert 和select 拆开好吗
      

  2.   

    不好意思。忘记换行了insert into forbidden_employee(id,forbidden_employee_name,forbidden_employee_id,forbidden_employee_sex,forbidden_employee_bir,forbidden_employee_hu_ji,forbidden_employee_edu,forbidden_employee_addr,zan_zhu_id,image,image_name,sure_desc,note,insert_worker) 
    select SEQ_forbidden_employee_ID.Nextval,a.personnel_name,a.personnel_cardid,a.sex,a.birthday,(select xzqu_note from xzqu where xzqu_code=a.county_code),(select edu_note from edu where edu_code=a.edu),a.address,a.zan_zhu_code,a.face_image,a.face_image_name,'','从业人员审核为不可从业人员','system' from personnel a where a.personnel_id=81
      

  3.   

    我不是这意思
    我意思你拆成2次 执行 一次insert 一次select
    可能sql太长 执行不了  
    我没试过你的这种方式 我怕别人骂我···
    代码主要是给别人看的 不过自己时间长了偶尔也会看不懂··· 还是简单易懂点吧
      

  4.   

    你说的我不明白,我是把Select出来的数据一下全插入到某表中
    sql我在PLSQL中执行是正常的