现在我要把数据库中的560张表的数据导到另一个数据库中:用DATABASE LINK来做我用的语句就是inert 表名  select* from 表名 语句   来做的
有没有更加好的办法   谢谢指教!!!!每个表中的数据都是很多的    !!!!!

解决方案 »

  1.   

    exp 用户名/密码 file=d:\table.dmp tables=%
      

  2.   

    1.用exp imp 的速度也不是很快把 还要把数据全都考到客户端   560个表 我也不能 全部写表名阿要是动态的生成 bat文件 太麻烦了   2.客户不愿意用exp imp。3. 现在我是用动态SQL写的。4. SQLSTRING := ‘INSERT INTO’|| TABLENAME|| 'SELECT * FROM '||TABLENAME||'WHERE COL='
                      || TIAOJIAN;
    5.表名是从数据库中取得。* 大体上就是上面这样,不知道我这个SQL语句怎么才能优化的更加好。
    我是个菜鸟干学   请指教。
      

  3.   

    如果是这样要求的话,你的方法也就比较合适了。
    取表名的时候可以从系统视图USER_ALL_TABLES 得到,里面有个TABLE_NAME字段。
      

  4.   

    因为有外键  而且也不能去掉外键、视图和触发器     我创建了一个表用来存tablename的。通过排序来去定外键在后。不知道要是数据量比较大,比如100W 个记录   是不是分批来插入比较快呢?我听说   分批来做   根据不同的表来考虑。  有没有谁做过这方面的请指教。~~~~~~    ~—~