Sql 使用架构名称的Oracle相关查询
考虑以下相关查询:Sql 使用架构名称的Oracle相关查询,sql,oracle,correlated-subquery,Sql,Oracle,Correlated Subquery,考虑以下相关查询: update CASSETTE.DB_NIM_CABLES a set( cgb_a, cgb_z ) = ( select regexp_substr( name, '[^ ]+', 1, 1 ) , regexp_substr( name, '[^ ]+', 1, 1 ) from CASSETTE.DB_NIM_CABLES b where b.id = a.id ) where REGEXP_COUNT( a.name,
update CASSETTE.DB_NIM_CABLES a
set( cgb_a, cgb_z ) =
(
select regexp_substr( name, '[^ ]+', 1, 1 )
, regexp_substr( name, '[^ ]+', 1, 1 )
from CASSETTE.DB_NIM_CABLES b
where b.id = a.id
) where REGEXP_COUNT( a.name, '-' ) = 1;
如果我使用CASSSETTE帐户运行它,这是可行的,但不使用任何其他帐户。为什么会出现这种情况?之所以会出现这种情况,可能是因为您想要运行DML的其他用户帐户没有表的更新和选择权限。 因此盒式磁带用户应向相应的用户授予权限 也就是说,如果您想从OTHERUSER模式运行它,您应该 1-使用盒式磁带用户连接到DB 2-给予如下许可
grant ALL PRIVILEGES on DB_NIM_CABLES to OTHERUSER ;
PS我给所有的权限,它应该足够给选择,插入,更新
请参阅本文档中有关对象权限的部分
发生这种情况的原因可能是,您想要运行DML的其他用户帐户没有对表的更新和选择权限。 因此盒式磁带用户应向相应的用户授予权限 也就是说,如果您想从OTHERUSER模式运行它,您应该 1-使用盒式磁带用户连接到DB 2-给予如下许可
grant ALL PRIVILEGES on DB_NIM_CABLES to OTHERUSER ;
PS我给所有的权限,它应该足够给选择,插入,更新
请参阅本文档中有关对象权限的部分
有重复的表格,一个在盒式磁带模式中,另一个在GTFIBER中。我正在更新GTFIBER方案中的表,并在另一个方案中查找数据。感谢您的时间有重复的表格,一个在盒式磁带模式中,另一个在GTFIBER中。我正在更新GTFIBER方案中的表,并在另一个方案中查找数据。谢谢您的时间您会遇到什么样的错误?您是否具有从另一个帐户更新该表的适当权限?我没有收到错误,我看到一个提示说行已更新,但当我查看时,没有行被更新。我已分配了适当的权限。您是否从其他登录会话进行检查,并且在检查更改之前未提交?您会遇到什么样的错误?您是否具有从另一个帐户更新该表的适当权限?我没有收到错误,我看到一个提示说行已更新,但当我查看时,没有行被更新。我已分配了适当的权限。是否从其他登录会话进行检查,并且在检查更改之前未提交?