2011-02-16 67 views
1

我試圖更新表中沒有唯一索引的行。所以,我選擇我想更新,現在我想更新的行這樣的行的ROWID:PL/SQL:基於ROWID更新行

UPDATE MYTABLE SET MYCOLUMN = 0 WHERE ROWID = "AAAIWWAAFAAApwDADR" 

MYCOLUMN類型爲NUMBER(1)

我得到的錯誤:invalid identifier [SQL State=42000, DB Errorcode=904]

任何想法爲什麼?

+2

你也可以考慮[`SELECT ... FOR UPDATE`](http://download.oracle.com/docs/cd/B19306_01/appdev.102 /b14261/sqloperations.htm#BABJCEIF)語法,它隱式地使用`ROWID`,所以你不必處理它,對於一個更一般的情況,你沒有對這個值進行硬編碼。 – 2011-02-16 14:44:56

回答

7

嘗試使用單引號:

UPDATE MYTABLE SET MYCOLUMN = 0 WHERE ROWID = 'AAAIWWAAFAAApwDADR' 
+0

輝煌 - 謝謝!我會盡快將這個答案標記爲正確的! – SlappyTheFish 2011-02-16 10:42:14