Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 使用架构名称的Oracle相关查询_Sql_Oracle_Correlated Subquery - Fatal编程技术网

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方案中的表,并在另一个方案中查找数据。谢谢您的时间

您会遇到什么样的错误?您是否具有从另一个帐户更新该表的适当权限?我没有收到错误,我看到一个提示说行已更新,但当我查看时,没有行被更新。我已分配了适当的权限。您是否从其他登录会话进行检查,并且在检查更改之前未提交?您会遇到什么样的错误?您是否具有从另一个帐户更新该表的适当权限?我没有收到错误,我看到一个提示说行已更新,但当我查看时,没有行被更新。我已分配了适当的权限。是否从其他登录会话进行检查,并且在检查更改之前未提交?