2013-03-21 120 views
0

我在MySQL數據庫中創建表,但它給錯誤...如何在mysql數據庫中創建TINYINT(1)數據類型?

CREATE TABLE IF NOT EXISTS `EC_TIMETABLE` (
    `S_ID` VARCHAR(30) NOT NULL PRIMARY KEY, 
    `SKILLSET_ID` VARCHAR(30) NULL , 
    START_DT DATETIME NULL, 
    END_DT DATETIME NULL, 
    REPEAT TINYINT(1) NULL, 
    ALL_DAY TINYINT(1) NULL, 
    CLASS_DURATION INT NULL, 
    COURSE_DURATION INT NULL, 
    REPEAT_TYPE VARCHAR(30) NULL, 
    REPEAT_EVERY INT NULL, 
    REPEAT_DAYS VARCHAR(100) NULL, 
    REPEAT_FROM DATE NULL, 
    REPEAT_TO DATE NULL, 
    COURSE_FEE INT NULL, 
    ATTENDEE_MIN INT NULL, 
    ATTENDEE_MAX INT NULL, 
    SEARCH_KEY TINYTEXT NULL, 
    FOREIGN KEY (`SKILLSET_ID`) 
    REFERENCES `EC_SKILLSET` (`S_ID`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION) 
ENGINE = InnoDB; 

但它給錯誤:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'REPEAT TINYINT(1) NULL, ALL_DAY TINYINT(1) NULL, CLASS_DURATION INT NULL' at line 6

如何解決這一..

+0

謝謝所有快速響應.. – 2013-03-21 07:43:59

回答

3

REPEAT是保留關鍵字。你仍然可以使用它,但你需要用反引號來包裝它。

`REPEAT` TINYINT(1) NULL, 

我建議你不要使用候補名單上的這樣的關鍵字,以避免將來出現頸部疼痛。

1

我相信REPEAT是MySQL中的關鍵字。嘗試重命名您的專欄。

1

首先,您不應該使用REPEAT,因爲這是由mysql保留的,其次請看MySql Error 150 - Foreign keys,因爲您有關於外鍵的其他錯誤。

+0

外鍵有什麼問題? – 2013-03-21 07:43:04

+0

啊對不起我愚蠢,它應該工作得很好。對不起,回覆太快了。 – pauel 2013-03-21 07:44:39