CREATE PUBLIC SYNONYM table1 FOR m1.table1;

解决方案 »

  1.   

    那如果我想user只和m1这个用户一样就好了。。类似创建为什么不行意思就是m1可以是select * from table1 用user 登陆也可以是select * from table1吧.那就不需要同意词了啊
      

  2.   

    因为数据库是别人的。。不好再上面做什么我只是想添加两个用户一个象m1一个象m2就可以了。也就是说使用新添加的用户登陆到自己当前库的时候select 不用加数据库名就可以了
      

  3.   

    就算权限一样也是两个不同的用户,
    已经用m1建立了table1,ORACLE已经把它当做M1.TABLE1来创建了
    你在用其它用户进入(user1),访问此表只能M1.TABLE或建立同义词访问了,
      

  4.   

    要不你就用user1进去建立一个隐含同义词:
    CREATE SYNONYM table1 FOR m1.table1;
    这样只有user1可以用这个同义词,不影响其它用户
      

  5.   

    我开始有点明白了。呵呵。。那使用同义词访问的话。
    CREATE PUBLIC SYNONYM table1 FOR m1.table1; 就可以了吗?
    如果创建后是否就可以执行select * from table1了。
      

  6.   


    CREATE PUBLIC SYNONYM table1 FOR m1.table1; 
    建立的,所有用户都可以以select * from table1访问m1.table1以user1
    CREATE SYNONYM table1 FOR m1.table1;
    建立的,user1用户可以以select * from table1访问m1.table1