2014-11-06 25 views
0

我在一個表中有4個組,名爲GroupA,GroupB,GroupC,GroupD。列應該只接受5個值,不能超過。我如何在MySQL中實現這一點?如何限制在mysql中插入數據

GroupA GroupB 
    aaa  fff 
    bbb  ggg 
    ccc  iii 
    ddd 
    eee 

現在的第六人不應該進入A組

+0

我不知道限制在MySQL中的值。 – 2014-11-06 12:52:22

回答

0

有可以採取在MySQL兩種方法。首先是使用觸發器來驗證值。

第二個是創建一個具有五個合法值的參考表,並使用外鍵約束來確保該值。事情是這樣的:

create table GroupA_value (
    GroupA varchar(255) not null primary key 
); 

create table t (
    . . . 
    GroupA varchar(255) not null preferences GroupA_value(GroupA) 
) 

就個人而言,我會用標識符而不是實際價值,但你不給對整體結構的許多信息。

大多數其他數據庫都支持check約束條件,這使得這更容易。 MySQL接受語法,但不執行檢查。

+0

其實這是一個問答遊戲。所以在每個小組中只有5人應該在那裏,我也要計算每個小組的得分。 – 2014-11-06 13:12:59