CREATE TABLE in MySQL 语法错误
CREATE TABLE in MySQL syntax error
我正在尝试将数据库 link 用于我的 java 项目
我正在使用 wampsarver 创建数据库。
请问我该怎么做才能解决这个问题。
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 ') NOT NULL , Phone
DOUBLE( 20 ) NOT NULL , Id
INT( 20 ) NOT
NULL AUTO_INCR' at line 6
CREATE TABLE `Laptop` (
`serial number ` INT( 20 ) NOT NULL ,
`Device Model` VARCHAR( 20 ) NOT NULL ,
`Device Manufacturer` VARCHAR( 20 ) NOT NULL ,
`Device Color` VARCHAR( 20 ) NOT NULL ,
`Screen size` DOUBLE( 20 ) NOT NULL ,
`Phone` DOUBLE( 20 ) NOT NULL ,
`Id` INT( 20 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
UNIQUE (
`serial number `
)
) ENGINE = innodb
DOUBLE
也需要精度(我给了 DOUBLE(20,2)
- 根据需要更改)。
此外,在 serial number
列名称的末尾有一个杂散的 space。
CREATE TABLE `Laptop` (
`serial number` INT( 20 ) NOT NULL ,
`Device Model` VARCHAR( 20 ) NOT NULL ,
`Device Manufacturer` VARCHAR( 20 ) NOT NULL ,
`Device Color` VARCHAR( 20 ) NOT NULL ,
`Screen size` DOUBLE( 20,2) NOT NULL ,
`Phone` DOUBLE( 20 ,2) NOT NULL ,
`Id` INT( 20 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
UNIQUE (
`serial number`
)
)
此外,最好使用 DECIMAL
而不是 DOUBLE
,因为双打不能准确表示并且在进行比较时会产生问题。
对于 double 你必须在 precision.Also 的逗号后添加另一个数字 在 name.the 以下脚本工作后
不允许 space
CREATE TABLE `Laptop` (
`serial number` INT( 20 ) NOT NULL ,
`Device Model` VARCHAR( 20 ) NOT NULL ,
`Device Manufacturer` VARCHAR( 20 ) NOT NULL ,
`Device Color` VARCHAR( 20 ) NOT NULL ,
`Screen size` DOUBLE( 20,4 ) NOT NULL ,
`Phone` DOUBLE( 20,4 ) NOT NULL ,
`Id` INT( 20 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
UNIQUE (
`serial number`
)
) ENGINE = innodb
我正在尝试将数据库 link 用于我的 java 项目 我正在使用 wampsarver 创建数据库。 请问我该怎么做才能解决这个问题。
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 ') NOT NULL ,
Phone
DOUBLE( 20 ) NOT NULL ,Id
INT( 20 ) NOT NULL AUTO_INCR' at line 6
CREATE TABLE `Laptop` (
`serial number ` INT( 20 ) NOT NULL ,
`Device Model` VARCHAR( 20 ) NOT NULL ,
`Device Manufacturer` VARCHAR( 20 ) NOT NULL ,
`Device Color` VARCHAR( 20 ) NOT NULL ,
`Screen size` DOUBLE( 20 ) NOT NULL ,
`Phone` DOUBLE( 20 ) NOT NULL ,
`Id` INT( 20 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
UNIQUE (
`serial number `
)
) ENGINE = innodb
DOUBLE
也需要精度(我给了 DOUBLE(20,2)
- 根据需要更改)。
此外,在 serial number
列名称的末尾有一个杂散的 space。
CREATE TABLE `Laptop` (
`serial number` INT( 20 ) NOT NULL ,
`Device Model` VARCHAR( 20 ) NOT NULL ,
`Device Manufacturer` VARCHAR( 20 ) NOT NULL ,
`Device Color` VARCHAR( 20 ) NOT NULL ,
`Screen size` DOUBLE( 20,2) NOT NULL ,
`Phone` DOUBLE( 20 ,2) NOT NULL ,
`Id` INT( 20 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
UNIQUE (
`serial number`
)
)
此外,最好使用 DECIMAL
而不是 DOUBLE
,因为双打不能准确表示并且在进行比较时会产生问题。
对于 double 你必须在 precision.Also 的逗号后添加另一个数字 在 name.the 以下脚本工作后
不允许 space CREATE TABLE `Laptop` (
`serial number` INT( 20 ) NOT NULL ,
`Device Model` VARCHAR( 20 ) NOT NULL ,
`Device Manufacturer` VARCHAR( 20 ) NOT NULL ,
`Device Color` VARCHAR( 20 ) NOT NULL ,
`Screen size` DOUBLE( 20,4 ) NOT NULL ,
`Phone` DOUBLE( 20,4 ) NOT NULL ,
`Id` INT( 20 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
UNIQUE (
`serial number`
)
) ENGINE = innodb