2013-08-23 50 views
0
CREATE TABLE CUSTOMERS(
      ID INT    NOT NULL, 
      NAME VARCHAR (20)  NOT NULL, 
      AGE INT    NOT NULL CHECK (AGE >= 18), 
      ADDRESS CHAR (25) , 
      SALARY DECIMAL (18, 2),  
      PRIMARY KEY (ID) 
    ); 

我已經創建了表。但它允許我添加age <18。 如何解決它。我需要檢查age>=18。如何編寫查詢呢?檢查限制不起作用

+0

MySQL允許在DDL語句中使用CHECK,但不幸的是它沒有用處。 –

+1

這裏有一個替代方案:http://dba.stackexchange.com/questions/9662/check-constraint-does-not-work –

+0

謝謝@ 491243我從那個鏈接得到了一個想法 – Ammu

回答

1

檢查命令被所有的mysql存儲引擎解析。這就是爲什麼它不起作用。要麼從PHP驗證您的數據,要麼使用觸發器,或者使用過程來驗證和插入數據。