MYSQL 创建表时报错#1064 – You have an error in your SQL syntax; check the manual that corresponds to your
-
出现问题的代码如下:
DROP TABLE IF EXISTS property_dian;
Create TABLE property_dian(
id int(2) NOT NULL AUTO_INCREMENT COMMENT '自增长ID',
lastmonth_read int(10) DEFAULT NULL COMMENT '上月电表读数',
currentmonth_read int(10) DEFAULT NULL COMMENT '当月电表读数',
Customer_Name varchar(50) DEFAULT NULL COMMENT '客户名称',
area int(10) DEFAULT NULL COMMENT '面积',
reading_date varchar(20) DEFAULT NULL COMMENT '抄表日期',
charging_begindate varchar(20) DEFAULT NULL COMMENT '计费开始日期',
charging_enddate varchar(20) DEFAULT NULL COMMENT '计费结束日期',
COUNT_year int(10) DEFAULT NULL COMMENT '统计年份',
COUNT_month int(10) DEFAULT NULL COMMENT '统计月份',
actual_num int(10) DEFAULT null COMMENT '实标用量,上月读数-本月读数',
unit_price float(4) DEFAULT null COMMENT '单价',
amount_receivable float(4) DEFAULT NULL COMMENT '应收金额',
actual_receivable float(4) DEFAULT NULL COMMENT '实收金额',
inserttime datetime(6) DEFAULT NULL COMMENT '提交时间',
PRIMARY KEY ('id')
)ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
-
报错信息如下:
MySQL 返回:
#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 ''id')
)ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_uni' at line 17
-
发现问题是字符类型前后冲突。
创建主键: PRIMARY KEY ('id') 这里的ID加了单引号,变成了字符型,与第一行创建字段 INT 型冲突,去掉单引号’‘ 后,改为:PRIMARY KEY (id),问题解决。