2017-05-07 55 views
1

在我的數據庫中,某些屬性只能設置爲某些值。例如,屬性「狀態」只能設置爲全職,兼職或臨時。我如何以及在哪裏在MySQL Workbench中執行此操作? (正如你可能知道的,我對MySQL很新)MySQL工作臺:如何設置某些屬性的約束

+0

Mysqlworkbench僅僅是一個圖形用戶界面,它不執行任何東西。 mysql服務器可以執行下面Gordon所描述的某些規則。 – Shadow

回答

2

你可以用幾種方法做到這一點。最不可取的方法是設置一個觸發器。另一種方法是將它們定義爲枚舉類型。我不是枚舉類型的粉絲,因爲它們不容易在不同的表中共享。

您還可以參考表和外鍵約束做到這一點:

create table ReferenceStatus (
    status varchar(255) primary key 
); 

alter table t add constraint fk_t_status foreign key (status) references ReferenceStatus(status); 
+0

謝謝,ENUM是我一直在尋找的! – Bob