我有一個UPDATE
聲明ABAP它看起來像:更新語句不工作
UPDATE zicstt099 FROM TABLE lt_zicstt099
更新失敗,每次用sy-subrc eq 4
。
數據庫表ZICSTT099
有三個主要的鍵:WEB_USER_ID
& EMAIL_ID
與MANDT
字段一起。
我正在嘗試更改EMAIL_ID
的值,但同樣沒有更新。
請幫忙。
我有一個UPDATE
聲明ABAP它看起來像:更新語句不工作
UPDATE zicstt099 FROM TABLE lt_zicstt099
更新失敗,每次用sy-subrc eq 4
。
數據庫表ZICSTT099
有三個主要的鍵:WEB_USER_ID
& EMAIL_ID
與MANDT
字段一起。
我正在嘗試更改EMAIL_ID
的值,但同樣沒有更新。
請幫忙。
您不能使用UPDATE <target> FROM <wa>.
和UPDATE <target> FROM TABLE <itab>.
語句更改主鍵字段,因爲它們使用主鍵查找它們必須更新的記錄。
改爲使用UPDATE <target> SET <set1> ... WHERE ...
語句。
你可以找到在這裏的細節:http://help.sap.com/abapdocu_70/en/ABAPUPDATE_SOURCE.htm#&[email protected]@
你不能「改變」數據基地重點領域。 您可以刪除原始條目並用另一個鍵插入新條目。但是你不能改變關鍵字段。 (我不能檢查實際的,如果modify
這樣做是在它自己的
如果你有改變的關鍵領域,你應該想想你的DB-定義
更多關於改變重點領域:。 Can we update primary key values of a table?
如果SY-SUBRC = 4,則至少一個線路是不能被改變,或者因爲沒有適當的行被發現,或者是因爲變化都將產生導致雙條目中的主鍵的線或數據庫表中的唯一二級索引。
該sta tement UPDATE將sy-dbcnt設置爲更改的行數。
您好我想與你的鑰匙創建該表所提到的,我建議你用下面的語法
update lt_zicstt099 set email_id = 'some value' where WEB_USER_ID = 'some web id'.
要檢查表進行更新,你可以使用SY-DBCNT知道的數行更新。 如果仍然面臨問題,請在下面評論
這是錯誤的,至少在Open SQL中。請參閱René引用的文檔。 – vwegert