exp system/manager owner=test1 file=filename log=lognameimp system/manager fromuser=test1   touser=test2  file=filename log=logname

解决方案 »

  1.   

    connect test1
    grant select on tabs to test2;
    connect test2
    select * from test1.tabs;
      

  2.   

    我试了一下,但楼上 bzszp(SongZip)的方法不可以。But I still thank you!
      

  3.   

    我必须这样做吗?
    exp system/manager owner=test1 file=filename log=logname
    imp system/manager fromuser=test1   touser=test2  file=filename log=logname如果有n个用户,我的执行n此吗?重复的数据库要导入n次,恐怕多大的硬盘都不够用?
    我理解的多吗?请beckhambobo(beckham) 及大家指教?
    ---------------------------------------------------------------------------------
    我的目的是:原来我的数据库连结是: Conn.Open "dsn=info;uid=test1;pwd=test1"
                现在要改为:Conn.Open "dsn=info;uid=test2;pwd=test2"运行后error是:Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e37' [Microsoft][ODBC driver for Oracle][Oracle]ORA-00942: 表或视图不存在 //global.asa,行7 
    ---------------------------------------------------------------------------------
    谢谢大家!
      

  4.   

    在原来的数据库中添加一个用户test2是不是可以呢?同时赋予它操作test1用户的标的权限。
    可具体的语句我不会写。
    你刚才说bzszp(SongZip)的方法不可行,是不是因为你还没有创建test2这个用户呢?具体的操作语句可以参考Oracle dba手册。
      

  5.   

    exp system/manager owner=test1 file=test1.dmp log=test1.log direct=y compress=yimp system/manager fromuser=test1   touser=test2  file=test1.dmp log=test2.log commit=y ignore=y这是两个用户之间最直接的办法。
    对于多个用户,注意1:将test1的对象的select等权限付给test2
      2、注意建同义词。
      

  6.   

    1、用导入导出方法是其一,变成数据库有两套副本,其实没多大必要。
    2、(1)将test1的对象的select等权限付给test2
       (2)建立同义词
       (3)这样就可以正常访问了。