SQL语法错误

问题描述:

我使用phpMyAdmin并想创建表。我使用的可视化界面,用于创建表,但我会从后“预览SQL”选项代码:SQL语法错误

CREATE TABLE `baza`.`koncert` ( 
    `koncert_id` INT(10) NOT NULL AUTO_INCREMENT , 
    `koncert_naziv` VARCHAR(50) NULL , 
    `koncert_lokacija` VARCHAR(50) NOT NULL , 
    `koncert_datum` DATE NULL DEFAULT NULL , 
    `koncert_cijena` DOUBLE(10) NOT NULL , 
    `koncert_slika` VARCHAR(500) NOT NULL) 
ENGINE = InnoDB CHARSET=utf8 COLLATE utf8_croatian_ci; 

而且我得到这个错误:

1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL version for the right syntax to use near ')' NOT NULL, 'koncert_slika' VARCHAR(500) NOT NULL) ENGINE=InnoDB CHARSET=ut

我尝试设置“koncert_datum '默认值为CURRENT_TIMESTAMP,但是我得到一个错误''koncert_datum'的默认值无效。“我只是不明白怎么可能是错的(我用phpMyAdmin的可视化界面,试图创建表!)

根据文档https://dev.mysql.com/doc/refman/5.7/en/floating-point-types.html DOUBLE类型需要总数字和十进制数字。类似于

`koncert_cijena` DOUBLE(12,2) NOT NULL , 
+0

谢谢。除此之外,我还必须添加primary_key('koncert_id')。现在它正在工作。 –

检查模式,并确保bazakoncert存在,并尝试通过删除“ENGINE = InnoDB CHARSET = utf8 COLLATE utf8_croatian_ci”来运行它们。