错误信息呢!!
我的没有错啊!!
SQL> select * from t1;        ID NAME       SEX
---------- ---------- ----------
         1 a          a
         2 b          b
         3 c          cSQL> select * from t2;        ID NAME            JOB        HIREDATE   DEF_HIREDA        SID
---------- --------------- ---------- ---------- ---------- ----------
         1 a                                     10-1月 -05
         2 b                                     10-1月 -05
         3 c                                     10-1月 -05
         4 d                                                      4.69SQL> insert t1 select ID,'d','d' from t2 where ID=4;
insert t1 select ID,'d','d' from t2 where ID=4
       *
ERROR 位于第 1 行:
ORA-00925: 缺失 INTO 关键字
SQL> INSERT INTO T1 SELECT ID,'d','d' FROM T2 WHERE ID=4;已创建 1 行。SQL> SELECT * FROM T1;        ID NAME       SEX
---------- ---------- ----------
         1 a          a
         2 b          b
         3 c          c
         4 d          d

解决方案 »

  1.   

    insert into a_bak(column1) select column1 from a;
    update a_bak set a_bak.column2=(select a.column2 from a where a.column1=a_bak.column1);
      

  2.   

    错误是
    ORA-00997:illegal use of LONG datatype
      

  3.   

    to ORARichard(没钱的日子......):表中没有主键,是多对多的关系。
    :(
      

  4.   

    真的呢!!TO: ORARichard(没钱的日子......) 
    为什么LONG数据类型会抱:非法使用 LONG 数据类型
      

  5.   

    to ORARichard(没钱的日子......):要是能改表就好了。没能权限改,而且不是导一次。要用C++程序每个小时导一次的。不知还有没有其它方法?
      

  6.   

    declare cursor cur is select column1,column2 from a;
    c1 varchar2(2);
    c2 long;
    begin
    open cur;
    loop
        fetch cur into c1,c2;
        exit when cur%notfound;
        insert into a_bak select c1,c2 from dual;
    end loop;
    end;