的替代方案是什么?
use database_name
oracle中SQL服务器的命令?
答案 0 :(得分:2)
替代方案是alter session
声明:
alter session set current_schema=<<schema_name>>
其中一个主要区别是,例如,当select语句中省略限定符时,它只会更改模式限定符。例如,如果您以user1
身份登录并执行上述alter session
语句,将user2
指定为current_schema,则user2
将用作架构限定符,而不是{{1} }}。与SQL Server的user1
语句不同,Oracle的原始会话将保留其权限,并且在执行use
语句后不会获取新的权限。
为了能够从alter session
架构中的表中选择(例如),user2
必须有user1
该表或select on
特权。对于任何其他对象也是如此,如果没有对该对象进行操作的权限,则引用该对象的语句将失败。