2010-03-05 121 views
0

我只能打開一次旅行,但可以多次關閉它。我無法將Trip_no +狀態聲明爲主鍵,因爲在關閉旅程時可能有多個條目。有什麼方法可以保證我的旅行號碼只打開一次?宣佈約束考慮編邏輯

例如,因爲它已經在下表中,所以不應該有第3行的「打開」狀態的第二行。

Trip No | Status 
1  Open 
1  Close 
1  Close 
2  Open 
2  Close 
3  Open 
3  Close 
3  Close 
3  Close 
3  Close 

回答

0

目前尚不清楚爲什麼每個旅行狀態變化都有很多條目。

但是,假設您有其他列,例如「日期」,也許你可以在表「旅行」中存儲「OpenDate」,並使用額外的表TripCloses將只包含行程關閉的日期。

或者,您可以使用兩個表TripOpens和TripCloses並對它們使用不同的約束。

換句話說,很難建議不知道存儲信息的細節