0

我正在使用 sybase-iq 服务器Sybase IQ/15.4.0.3014

我有一个工作查询来更新表的一个字段,如下所示

update  table1
set     a.field1= b.some_value
from    table1 a,
        table2 b
where   a.id = b.id

当我从 sql 会话执行它时,这工作正常。从高级应用程序调用它时,我收到上述查询的以下错误

SQL 异常代码是 7301
对不可更新查询尝试更新操作

我无法找到我收到此错误的原因。有什么办法可以修改查询。在互联网上搜索并没有多大帮助。

有没有人遇到过这样的问题?

4

2 回答 2

0

您尝试对隐式只读查询执行插入、更新或删除操作。您正在尝试更新无法以这种方式更改的系统表或表。

关联

于 2013-11-28T15:24:58.823 回答
0

否决票

我建议仔细检查 table_name 实际上是一个表,而不是一个视图。如果是视图,可以用 sp_helptext 命令看到它的定义,比如

sp_helptext 'view_name'

或者

sp_helptext 'schema_name.view_name'

于 2017-01-17T12:28:37.323 回答