本帖最后由 Galdys 于 2010-10-31 14:49:58 编辑

解决方案 »

  1.   

    empno是主键吧!感觉你应该用uodate,而不是insert。建议试试。
      

  2.   

    --建议视图里面加个empno 
    update emp a set age=(select age from eage b where a.name=b.name)
    where exists(select 1 from eage c where a.name=c.name)
      

  3.   

    你有些列不允许为空。例如:EMPNO,你不插入号码,只插入个年龄有什么用?假设有EMPNO列,大致可为如下:
    insert into emp(age) select empno , age from eage  
    或是你更新原有EMPNO的age列?
    update emp set age = (select age from eage n where n.empno = m.enpno)
    from emp m where exists (select 1 empno from eage where empno = m.empno)或者
    update emp set age = (select age from eage n where n.empno = m.enpno)
    from emp m where m.empno in (select empno from eage)
      

  4.   

    update emp set age=(select age from eage where emp.ename=ename and rownum=1)
    where exists(select 1 from eage where emp.ename=ename)
      

  5.   

    恩 是我把EMPNO 给忘了, 谢谢 大家了