SQL语句:
CREATE TABLE t_user(
'id' BIGINT(20) NOT NULL COMMENT '用户ID,手机号码',
`nickname` VARCHAR(255) NOT NULL,
`password` VARCHAR(32) DEFAULT NULL COMMENT 'MD5(MD5(pass明文+固定salt)+salt)',
`salt` VARCHAR(10) DEFAULT NULL,
`head` VARCHAR(128) DEFAULT NULL COMMENT '头像',
`register_data` datetime DEFAULT NULL COMMENT '注册时间',
`last_login_date` datetime DEFAULT NULL COMMENT '最后一次登录时间',
`login_count` int(11) DEFAULT '0' COMMENT '登录次数',
PRIMARY KEY('id')
)
SQL语句都很简单,这里报错是因为格式的输入错误,在创建**id nickanme password salt head等这些表头时使用了单引号’ ',造成无法成功执行SQL语句。
解决方案:
1. 此问题是 MySql 语法上的错误,在 MySQL 中,为了区分 MySQL 的关键字与普通字符,MySQL 引入了一个反引号。
在上述的 sql 语句中,**`列名称没有使用反引号`或者`列名称使用单引号`,都会报1064这个错误出来**。
2. 反单引号位置:不管什么输入法,**切换到英文状态下,左上角Esc键下边,Tab键上边,数字1键左边那个就可以打出反引号**,中文状态下是一个小圆点
3. 需要注意的是:创建数据表时只要表头那一列字段使用反单引号,其与用单引号即可。
CREATE TABLE t_user(
`id` BIGINT(20) NOT NULL COMMENT '用户ID,手机号码',
`nickname` VARCHAR(255) NOT NULL,
`password` VARCHAR(32) DEFAULT NULL COMMENT 'MD5(MD5(pass明文+固定salt)+salt)',
`salt` VARCHAR(10) DEFAULT NULL,
`head` VARCHAR(128) DEFAULT NULL COMMENT '头像',
`register_data` datetime DEFAULT NULL COMMENT '注册时间',
`last_login_date` datetime DEFAULT NULL COMMENT '最后一次登录时间',
`login_count` int(11) DEFAULT '0' COMMENT '登录次数',
PRIMARY KEY(`id`)
)