mysql中执行建表语句为什么总是报错?哪儿错了请明确标示出来!

CREATETABLE'message'('id'tinyint(1)NOTNULLauto_increment,'user'varchar(25)NOTNULL,'ti... CREATE TABLE 'message'(
'id' tinyint(1) NOT NULL auto_increment,
'user' varchar(25) NOT NULL,
'title' varchar(50) NOT NULL,
'content' tinytext NOT NULL,
'lastdate' date NOT NULL,
PRIMARY KEY ('id')
) ENGINE=InnoDB DEFAULT CHARSET=gbk AUTO_INCREMENT=1;

这个语句在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 ''message' (
'id' tinyint(1) NOT NULL auto_increment,
'user' varchar(25) NO' at line 1
展开
 我来答
椰岛农事
2013-08-29 · TA获得超过6514个赞
知道大有可为答主
回答量:1255
采纳率:62%
帮助的人:933万
展开全部
出现1064一般都属于语法错误的情况。
你试着把表名的单引号和把tinyint的长度去掉。
DATE值的格式是'YYYY-MM-DD'。按照标准的SQL,不允许其他格式。日期支持的范围为’1000-01-01’到’9999-12-31’。

但从表面上看,你写的这个SQL语句不存在错误,你仔细检查有没有多写了一个符号之类的。还要检查语句与语句间有没有空格。例如你这么写就是错误的:ENGINE=InnoDBDEFAULTCHARSET=gbk AUTO_INCREMENT=1;

CREATE TABLE message(
id tinyint not null auto_increment,
user varchar(25) not null,
title varchar(50) not null,
content tinytext not null,
lastdate date not null default '0000-00-00',
primary key (id)
) ENGINE=InnoDB DEFAULT CHARSET=gbk AUTO_INCREMENT=1;

希望能帮助到你,欢迎追问,尽我所能为你解答。
524237998
2013-08-29 · 超过27用户采纳过TA的回答
知道答主
回答量:61
采纳率:100%
帮助的人:62万
展开全部
这样试一下,字段名不用加引号,字符值插入才要加引号
CREATE TABLE message(
id tinyint(1) NOT NULL auto_increment,
user varchar(25) NOT NULL,
title varchar(50) NOT NULL,
content tinytext NOT NULL,
lastdate date NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=gbk AUTO_INCREMENT=1;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式