2013-10-10 62 views
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
更新操作無法找到爲什麼我得到這個錯誤。有沒有解決方案來修改查詢。在互聯網上搜索沒有多大幫助。

有沒有人遇到過這樣的問題?

+0

您可能想在http://sqlanywhere-forum.sybase.com上提問您的問題。它是SAP Sybase SQL Anywhere的Q&A站點,它是Sybase IQ的支持引擎。 –

+0

@Graeme謝謝。將在這裏提問後刪除這篇文章。 – mtk

+0

這是遊標更新的一部分嗎? – Hotel

回答

0

您試圖對隱式只讀的查詢執行插入,更新或刪除操作。您正嘗試更新無法以此方式更改的系統表或表格。

link

0

下投票

我建議仔細檢查table_name的實際上是一個表,而不是視圖。如果它是一個視圖,你可以看到它與sp_helptext的命令定義,如

sp_helptext的 'VIEW_NAME'

sp_helptext的 'schema_name.view_name'