2
我想在一個表Sales_order
中添加一列S_order_no
,約束條件是第一個字母必須以0
開頭。因此,如果我們嘗試寫入除0
以外的第一個字母,則會引發錯誤。 這有可能嗎?如果是,請用一個例子來解釋。在第一個字母的表中添加一列必須是0?
我想在一個表Sales_order
中添加一列S_order_no
,約束條件是第一個字母必須以0
開頭。因此,如果我們嘗試寫入除0
以外的第一個字母,則會引發錯誤。 這有可能嗎?如果是,請用一個例子來解釋。在第一個字母的表中添加一列必須是0?
你可以試試:
的MySQL/SQL服務器/甲骨文/ MS訪問:
CREATE TABLE Sales_order(
S_order_no varchar(6) primary key,
S_order_date Date,
CONSTRAINT CHK_order_no CHECK (left(S_order_no, 1) = '0')
);
不! MySQL不支持CHECK,並且所有數據庫引擎的語法都不盡相同。 –
參見:在MySQL CHECK約束不工作(HTTP:/ /stackoverflow.com/questions/2115497)。 – wchiquito