有没有避免每次表名都写"用户名."的办法?
有没有避免每次表名都写"用户名."的办法?
用system登录PLSQL后,
查询内容时,
SELECT * FROM USER1.TABLEA AA LEFT JOIN USER1.TABLEB BB ON AA.ID=BB.ID
每次所有表的前面都必须输入用户的名字和点,有没有类似
USE 用户 **** 这样的语句?
省去在所有表的前面都必须输入用户的名字和点?
暂且不谈登录时使用USER1的帐号和密码的方法,这个方法肯定可以。
user
------解决方案--------------------create public synonym
------解决方案--------------------把表的DML权限授予public
------解决方案--------------------scott用户
create public synonym emp for scott.emp;
grant select,update,insert on scott.emp;
system用户
select * from emp;
------解决方案--------------------如果你登陆的用户 是USER1
就可以不用写用户名了吧
------解决方案--------------------oracle就是这样规定的。要查看某个用户的表
一 用这个用户登录
二 别的用户有权限,用用户名.表名
应该没有别的办法
------解决方案--------------------创建同义词
create synonym tabblea on USER1.TABLEA
------解决方案--------------------同义词,synonym
------解决方案--------------------创建除sys、system等的正常用户,可以给该用户赋权限,所有的表,都建在该用户下面。再建表的时候,或者使用的时候,都不用加属主
------解决方案--------------------创建同义词:
create synonym table1 for user1.table1;
这样你就省事了,在当前用户下直接操作,不用键入用户名。
------解决方案--------------------创建名称一样的同义词
------解决方案--------------------创建同义词synonym