事情是这样的,我需要把sqlserver的表导入到远程的oracle上,普通表还好办,但一些附件表里存储了很多二进制文件,大概有200条记录,文件是200多M。我用sqlserver的数据dts试了好多次,都只能传一两条记录就不动了。于是我用omwb(oracle自己的迁移工具)把这个附件表导入到本地的oracle里去了。导入时是这样子的:
源:sqlserver,数据库名字是attach,里面有用的表就一个PROJECT_DOCUMENT_ATTACH,odbc数据源也是attach,用sa连接的
目的:oracle,连接用的用户名是danfo。
omwb倒完之后我发现多了个sa用户,多了个ATTACH的表空间(对应的数据文件叫ATTACH.dbf,400M左右),sa下面也有一个表PROJECT_DOCUMENT_ATTACH,跟原来sqlserver的表内容都一致。考虑到网络状态不好,我打算把这个数据文件手工拷贝到远程oracle,然后挂载,从而使远程的oracle上也有这个PROJECT_DOCUMENT_ATTACH表。要求远程的这个表是属于用户kwsoft的,目的数据库里也没有attach这个表空间。请问该如何操作才能实现目的??今天下午就要解决这问题,着急啊,望各位热心人多指教!

解决方案 »

  1.   

    对了,我的oracle是9i,是搭建在redflag linux上的。
      

  2.   

    对了,我的oracle是9i,是搭建在redflag linux上的。
      

  3.   

    用exp在本地将表导出。然后带着exp生成的文件到目的数据库上,手工建表空间,加用户,然后imp。
      

  4.   

    to bobfang(匆匆过客) :
       我在oem console 里选中这个表,然后右键,选择数据管理->导出,这时它提示我“只有应用程序已连接到oracle management server(oms)的情况下才能启动该向导。视图重新启动向导之前,请先启动该应用程序并连接到oms”。我以前一直就是单独启动oem的,我也不知道oms是什么,望详细说明
      

  5.   

    如果不行。导出文文本文件或者设置格式使用一下oracle的外部表的功能看行不行?
    2.使用oracle的透明网关试一试!
      

  6.   

    exp是个实用程序,可以在操作系统下直接执行。如要导出用户user1的表table1到文件file1中,可以这样执行
    exp USER1/PASSWORD_USER1@SERVERNAME file=FILE1 tables=TABLE1
    导入时,这样写
    imp USER1/PASSWORD_USER1@SERVERNAME file=FILE1 tables=TABLE1