2015-08-26 36 views
0

我想更改正在檢索的郵件的狀態。 考慮具有三列消息,用戶名和狀態的MySQL數據庫。 Database looks like this如何更改我正在檢索的記錄的狀態

從該表中我正在檢索它們都具有例如狀態1 我正在檢索用戶1檢索該消息後,其狀態爲1,我想的是消息的狀態改變到的消息的消息0.只有user1消息狀態不是其他。我該怎麼做?有人請回答.....

+0

更新message_user2設置狀態= 0其中username = '用戶1' 和狀態= 1。 ..將更新2行的方式,如果這是你的意思 – Drew

+1

你可能想在該表中的auto_inc ID驅動它 – Drew

+0

我不明白它。 –

回答

0

只需使用UPDATE聲明

UPDATE message_user2 
SET status = 0 
WHERE Username = 'user1' 
+0

我可以簡單地改變它的值。但是我想要的是在獲得記錄後我想要改變這個值。 –

+0

所以你想選擇做一個更新呢? @karthikeyan – Drew

+0

然後作爲德魯說在表中添加主鍵,所以我們可以很容易地參考 – Sherlock

0
UPDATE message_user2 
SET message_user2.status = 0 
WHERE Username IN '(SELECT Username FROM message_user2 WHERE Username = user1)'; 
0

試試這個

 
DECLARE @name VARCHAR(128) 
DECLARE @SQL VARCHAR(254) 
SELECT @name = (SELECT TOP 1 username FROM message_user2 WHERE username='user1' and status=1)

WHILE @name IS NOT NULL BEGIN SELECT @SQL = 'Update message_user2 set status=0 where username='[email protected] EXEC (@SQL) PRINT 'Updated value: ' + @name SELECT @name = (SELECT TOP 1 username FROM message_user2 WHERE username='user1' and status=1) END SELECT * from message_user2 where status=0 and username='user1' GO