例如,用戶創建產品並將其分配到類別中。如何避免和註銷一些意想不到的事情的數據庫?
中的類,我們有一些記錄:
-phone, id:0
-computer, id:1
-pad, id:2
和用戶創造一種產品,該產品需要分配一個類別,用戶做這樣的事情:
name:iphone
cat:0
流程將如下工作:
1. check the cat is exist in db or not
2a. if not exist prompt error
2b. if exist, put the record in db.
但是當完成第1步檢查時,有沒有什麼機會,重新2b是開始。管理員刪除電話類別。如果發生這種情況,數據庫將插入一個沒有cat id watch的記錄。該數據庫將有這樣的事情:
*-phone, id:0* (not any more, because the admin delete it)
-computer, id:1
-pad, id:2
但是有這樣的記載:
name:iphone //but it belong to no category, because the admin delete it.
cat:0
如果這樣做的一個機會,我怎樣才能避免這種情況?謝謝。
(使用PHP與MySQL的笨)
這不會工作,第1步後腳本有cat_id。然後腳本進入2b,但在執行2b之前,貓被刪除。該腳本仍然具有變量中的id,現在它被插入。我認爲你沒有完全閱讀/理解這個問題 – trampi