2011-01-22 2 views
0

Workbench MySQL - отличный инструмент, но вам нужно держать голову, поскольку она не проверяет ошибки.MySQL Workbench - ошибка в синтаксисе MySQL

Итак, он сгенерировал этот синтаксис SQL для создания таблицы, и это не сработает. И я не могу понять, почему

Это дает мне эту ошибку:

#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 
') NULL DEFAULT NULL , `maaltijd` TINYINT(1) NOT NULL , 
`cheques` TINYINT(1' 
at line 14 

Это запрос:

CREATE TABLE IF NOT EXISTS `nascholing`.`aanvraag` (
     `aanvraagId` INT(11) NOT NULL AUTO_INCREMENT , 
     `userId` BIGINT(20) NOT NULL , 
     `creationDate` DATETIME NULL DEFAULT NULL , 
     `vakGroep` INT(11) NULL DEFAULT NULL , 
     `personeelType` INT(11) NOT NULL , 
     `leeftijd` INT(11) NULL DEFAULT NULL , 
     `thema` VARCHAR(255) NOT NULL , 
     `intern` TINYINT(1) NULL DEFAULT -1 , 
     `duur` INT(11) NOT NULL , 
     `tijdens` INT(11) NULL DEFAULT NULL , 
     `type` INT(11) NULL DEFAULT NULL , 
     `voor` INT(11) NOT NULL , 
     `kost` DOUBLE(11) NULL DEFAULT NULL , 
     `maaltijd` TINYINT(1) NOT NULL , 
     `cheques` TINYINT(1) NOT NULL , 
     `betalingsmethode` INT(11) NOT NULL , 
     `aanschafBoek` TINYINT(1) NOT NULL , 
     `kostBoek` DOUBLE(11) NULL DEFAULT NULL , 
     PRIMARY KEY (`aanvraagId`) , 
     UNIQUE INDEX `aanvraagId_UNIQUE` (`aanvraagId` ASC) , 
     INDEX `fk_aanvraag_user1` (`userId` ASC) , 
     INDEX `fk_aanvraag_duur1` (`duur` ASC) , 
     INDEX `fk_aanvraag_tijdens1` (`tijdens` ASC) , 
     INDEX `fk_aanvraag_type1` (`type` ASC) , 
     INDEX `fk_aanvraag_vakGroep1` (`vakGroep` ASC) , 
     INDEX `fk_aanvraag_voorEmail1` (`voor` ASC) , 
     INDEX `fk_aanvraag_betalingsMethode1` (`betalingsmethode` ASC) , 
     CONSTRAINT `fk_aanvraag_user1` 
     FOREIGN KEY (`userId`) 
     REFERENCES `nascholing`.`user` (`userId`) 
     ON DELETE NO ACTION 
     ON UPDATE NO ACTION, 
     CONSTRAINT `fk_aanvraag_duur1` 
     FOREIGN KEY (`duur`) 
     REFERENCES `nascholing`.`duur` (`duurId`) 
     ON DELETE NO ACTION 
     ON UPDATE NO ACTION, 
     CONSTRAINT `fk_aanvraag_tijdens1` 
     FOREIGN KEY (`tijdens`) 
     REFERENCES `nascholing`.`tijdens` (`tijdensId`) 
     ON DELETE NO ACTION 
     ON UPDATE NO ACTION, 
     CONSTRAINT `fk_aanvraag_type1` 
     FOREIGN KEY (`type`) 
     REFERENCES `nascholing`.`type` (`typeId`) 
     ON DELETE NO ACTION 
     ON UPDATE NO ACTION, 
     CONSTRAINT `fk_aanvraag_vakGroep1` 
     FOREIGN KEY (`vakGroep`) 
     REFERENCES `nascholing`.`vakGroep` (`vakGroepId`) 
     ON DELETE NO ACTION 
     ON UPDATE NO ACTION, 
     CONSTRAINT `fk_aanvraag_voorEmail1` 
     FOREIGN KEY (`voor`) 
     REFERENCES `nascholing`.`voorEmail` (`voorEmailId`) 
     ON DELETE NO ACTION 
     ON UPDATE NO ACTION, 
     CONSTRAINT `fk_aanvraag_betalingsMethode1` 
     FOREIGN KEY (`betalingsmethode`) 
     REFERENCES `nascholing`.`betalingsMethode` (`betalingsMethodeId`) 
     ON DELETE NO ACTION 
     ON UPDATE NO ACTION) 
    ENGINE = InnoDB 
    DEFAULT CHARACTER SET = utf8 
    COLLATE = utf8_general_ci; 

ответ

2

Существует необходимость указать десятичную точку для типа double

например,

`kost` DOUBLE(11, 2) NULL DEFAULT NULL, ... 

так далее для всех типов двойного

Смежные вопросы