oracle的sql语句为什么要在表名前加前缀
1个回答
展开全部
你说的是abc.table,的 abc吧,这个是用户名,是这张表所属于的用户。
我举个例子:
比如有a,b两个用户。b用户下有一张c表。a用户下也有一张c表。
如果a用户写select * from c,那么这个c查询的是a用户下的c表。
如果a用户写为select * from b.c,那么这次a用户查询的就是b用户下的c表,不过这里有一个前提,a用户有查询b用户下c表的权限。
oracle下因为遵循最小权限原则,比如b用户对于b用户下的c表可以进行增删改查,但是对于另外一个人来说能查询就可以,如果让他去删除和改,那么可能会有问题产生,所以只给查询的权限,所以就会出现这个问题。
我举个例子:
比如有a,b两个用户。b用户下有一张c表。a用户下也有一张c表。
如果a用户写select * from c,那么这个c查询的是a用户下的c表。
如果a用户写为select * from b.c,那么这次a用户查询的就是b用户下的c表,不过这里有一个前提,a用户有查询b用户下c表的权限。
oracle下因为遵循最小权限原则,比如b用户对于b用户下的c表可以进行增删改查,但是对于另外一个人来说能查询就可以,如果让他去删除和改,那么可能会有问题产生,所以只给查询的权限,所以就会出现这个问题。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询