MySql 建表出现的问题:[ERR] 1064 - You have an error in your SQL syntax; check the manual.......

使用 MySql 建表出现的问题

  • 在使用 Navicat Premium 运行 sql 语句进行建表时,MySQL 报错如下:

    建表语句:
    DROP DATABASE IF EXISTS javaweb;
    CREATE DATABASE javaweb DEFAULT CHARACTER SET utf8;
    USE javaweb;
    
    CREATE TABLE user(   
    	id int primary key auto_increment,
    	name varchar(20) not null,
    	gender varchar(5),
    	age int,
    	address varchar(32),
    	qq	varchar(20),
    	email varchar(50),
    	username varchar(32),
    	password varchar(32)
    );
    
    出现错误提示
    [ERR] 1064 - You have an error in your SQL syntax; check the manual.......
    

    此问题是 MySql 语法上的错误,在 MySQL 中,为了区分 MySQL 的关键字与普通字符,MySQL 引入了一个反引号。

    在上述的 sql 语句中,列名称没有使用反引号或者列名称使用单引号,都会报这个错误出来。

    DROP DATABASE IF EXISTS javaweb;
    CREATE DATABASE javaweb DEFAULT CHARACTER SET utf8;
    USE javaweb;
    
    CREATE TABLE user(   
    	`id` int primary key auto_increment,
    	`name` varchar(20) not null,
    	`gender` varchar(5),
    	`age` int,
    	`address` varchar(32),
    	`qq`	varchar(20),
    	`email` varchar(50),
    	`username` varchar(32),
    	`password` varchar(32)
    );
    
posted @ 2019-04-22 23:13  RookieMZL  阅读(5660)  评论(0编辑  收藏  举报