2016-04-30 56 views
0

我正在使用MYSQL並希望基於外表對我的主表進行狀態更新。我在下面列出我的問題基於mysql中的另一個表更改表的狀態

enter image description here

我想,當所有與表T2相同的ID(比如X001)的記錄的狀態更改爲1,表T1的自動狀態爲ID X001被設置爲1,如下圖所示

enter image description here

希望我是清楚的,請幫幫忙,先謝謝了。

我試圖與此

更新T1設置狀態= 1其中id =(選擇來自T2 id其中狀態<> 0組由ID,狀態)

但它更新T1的狀態時,它在t2中爲不同的id找到狀態1。 我要當的T2的狀態所有的值設置爲1,每個ID

請幫助

+0

您需要觸發器更新嗎?或者您手動執行更新? – scaisEdge

+0

你可以請我提供觸發語法,我沒有太多的想法觸發 –

回答

0

你應該創建一個聯接兩個表顯示的狀態視圖該表只應更新。

如果每次狀態更改時都嘗試更新兩個表,則可能會得到不一致的表。視圖就像一張桌子一樣工作,但您可以加入並選擇操作來設置結果的格式。

更多關於視圖:http://www.w3schools.com/sql/sql_view.asp

+0

實際上我想要一個觸發器實現,因爲加入不會解決我的問題 –

+0

你想有不一致的狀態,只有在T1更新後才同步? –

相關問題