2016-08-31 30 views
1

我在這個特定的問題上掙扎數小時。希望有人能幫助我。Oracle Apex:如何使用主鍵將表格的表格形式更新爲始終標識?

作爲上面描述的問題,我有一個表格形式,它是從一個表中建立的,它有一個主鍵('ID')設置爲「Identity Always」。這成爲表格形式的問題,因爲每當我對數據進行更改並點擊'保存',Apex就會顯示以下錯誤:ORA-32796:無法更新生成的始終標識列

我嘗試了幾種解決方法作爲ROWID,但這種解決方案不起作用,因爲我需要將表格形式與來自其他表格的字段連接以顯示其他信息 - 因此ROWID將不會被保留,並且不能用作主鍵。

我也看了在Apex documentation是:

Utilizing the IDENTITY clause on a table can have an impact on Application Express applications. An error will be raised by the database if an IDENTITY column, with ALWAYS parameter specified, is included in an INSERT or UPDATE statement. The Application Express Builder has been enhanced to allow the specification of the identity clause within the Create Table Wizard. The Create Form wizard will generate a "Display Only" item for an identity column with the ALWAYS parameter.

,我不明白。 Apex確實生成了額外的列('ID_Display'),但它並沒有改變我的表格形式仍然拋出相同錯誤(上面的ORA-32796)的事實。這個「僅顯示」項目能夠讓我從「無法更新生成的始終標識列」中解脫出來嗎?

作爲一個方面說明,我正在開發apex.oraclecorp.com,Apex作爲一項服務,在那裏我無法訪問文件或對我的表進行SQL更改。請讓我知道如果你之前遇到過這個問題,並找到了解決方案 - 在此先感謝!

P.S. Apex版本是5.0.4。

編輯:

對不起,我只是意識到有SQL命令UI到頂點執行SQL操作。任何人都知道如何將ALTERS表的標識改爲DEFAULT?

回答

0

所以我敢肯定,這更是一個解決辦法比問題和解決方案的實際理解的,但在嚮導中,我發現:

,當你在「表單屬性」嚮導設置如下:

Primarky密鑰類型:選擇 主鍵列Primark的鍵列(S):「你的列」 主鍵列:(我也沒有什麼可以在這裏輸入) 主鍵源類型:'現有觸發器「(這似乎允許Identity列在我正在處理的表格/表單上執行)。我一直在遇到同樣的問題,我會將其更改爲「現有序列」。

如果你知道了這一點,我很想知道細節。

多看書是必需的,但它的東西......

0

以下解決ORA-32796插入問題對我來說可編輯的互動電網。我想表格形式的作品也是一樣的。

  1. 轉到相關頁面的頁面設計器。
  2. 點擊「Processing」,或點擊「Component View」,然後點擊「Page Processing」下的進程。對於可編輯交互式網格,它是「保存交互式網格數據」的過程。
  3. 單擊屬性中「插入後返回主鍵」部分的「是」。
  4. 點擊保存/運行。