一个简单问题:关于创建用户的 B可以为这些对象创建同义词或视图。如create synonym TABLENAME for A.TABLENAME;或create view TABLENAME as select * from A.TABLENAME; 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 CREATE PUBLIC synonym tablename for user1.tablenameconn user2/password@sidselect * from tablename 如果不用楼上两位的方法,那么必须写成 select * from "A"."TABLENAME"因为那个表不是B用户的,为了访问,当然得给出“全路径”,就好像你在windows中找文件一样,得说明这个文件是哪个目录下的.而且,强烈建议访问数据表的时候指明该表的属主(也就是OWNER,也就是创建这个表的用户),因为假如B用户下也有一个同名的表,那么你用 select * from tablename 根本不会出错,但查到的内容就变了。 1. 你首先要明白Schema这个概念,也就是所有者.2. 当你查询的对象不是自己的时候,必须加上所有者 当然也可以用同义词,view.==========引用1楼的==========B可以为这些对象创建同义词或视图。如create synonym TABLENAME for A.TABLENAME;或create view TABLENAME as select * from A.TABLENAME; 1. 应该能明白了吧.2. 在sql server的中部分限定和完全限定3. 完全限定是: 服务器名称.数据库名称.所有者.数据库对象 4部分组成.4. 而Oracle只用所有者.数据库对象就可以了. 对应大型的数据库,访问起来就是比较的麻烦,当然这也是有更大的好处的。比如,在一个大型的分布式系统中(数据库是分布式的),会有很多的用户和很多表,这就经常发生,不同的用户拥有相同名称的表,但是,还有其他的用户需要访问这些表,所以,为了表示区分,就一定要有限定符。还有一个小小的问题: 一般情况下,表的使用者经常是没有建立任何的表,而只是具有查询的权限,这个时候,就可以通过建立同义词来隐藏这些表的 物理位置和实际的表所有者,而且,可以不必费力的进行权限的设置。哥们刚学Oracle 一个月,不当之处请拍砖! table block number与TABLE ACCESS FULL实际时间相差很大 如何把含有CLOB字段的表导到另外一台数据库呢? 论坛变样了。 Case 语句的问题 怎样查表是被哪一个进程锁的? 有谁试过在WINDOWS XP HOME EDITON上安装ORACLE? 用什么方法倒出ORACLE中的数据库脚本 Oracle 连接 sqlserver 存储过程:存储过程返回查询多表查询结果集怎么定义出参? 关于sqlldr导入忽略空行的问题 问一个弱弱的问题,关于自定义函数 请帮忙写一个存储过程,谢谢
因为那个表不是B用户的,为了访问,当然得给出“全路径”,就好像你在windows中找文件一样,得说明这个文件是哪个目录下的.而且,强烈建议访问数据表的时候指明该表的属主(也就是OWNER,也就是创建这个表的用户),因为假如B用户下也有一个同名的表,那么你用 select * from tablename 根本不会出错,但查到的内容就变了。
2. 当你查询的对象不是自己的时候,必须加上所有者
==========引用1楼的==========
B可以为这些对象创建同义词或视图。如
create synonym TABLENAME for A.TABLENAME;
或
create view TABLENAME as select * from A.TABLENAME;
2. 在sql server的中部分限定和完全限定
3. 完全限定是: 服务器名称.数据库名称.所有者.数据库对象 4部分组成.
4. 而Oracle只用所有者.数据库对象就可以了.
哥们刚学Oracle 一个月,不当之处请拍砖!