我在运行SQL语句时出现了#1064错误

运行的语句:
CREATE TABLE IF NOT EXISTS `uchome_app_ask` (
`id` int(11) NOT NULL auto_increment,
`title` varchar(255) NOT NULL default '',
`typeid` smallint(4) NOT NULL default '0',
`uid` int(11) NOT NULL default '0',
`username` varchar(50) NOT NULL default '',
`content` text,
`tag` varchar(250) default NULL,
`dateline` int(11) NOT NULL default '0',
`score` smallint(4) NOT NULL default '0',
`view_count` int(11) NOT NULL default '0',
`reply_count` int(11) NOT NULL default '0',
`status` smallint(1) NOT NULL default '0',
`msg` text,
PRIMARY KEY (`id`),
KEY `typeid` (`typeid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf-8;

出现的错误提示:
#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 'DEFAULT CHARSET=utf-8' at line 17
我将utf-8改成utf8也不行
还是出现以上的错误信息
最新回答
春风正得意

2025-06-26 21:56:51

MySQL用utf8, 而不是utf-8
改为:

CREATE TABLE IF NOT EXISTS `uchome_app_ask` (
`id` int(11) NOT NULL auto_increment,
`title` varchar(255) NOT NULL default '',
`typeid` smallint(4) NOT NULL default '0',
`uid` int(11) NOT NULL default '0',
`username` varchar(50) NOT NULL default '',
`content` text,
`tag` varchar(250) default NULL,
`dateline` int(11) NOT NULL default '0',
`score` smallint(4) NOT NULL default '0',
`view_count` int(11) NOT NULL default '0',
`reply_count` int(11) NOT NULL default '0',
`status` smallint(1) NOT NULL default '0',
`msg` text,
PRIMARY KEY (`id`),
KEY `typeid` (`typeid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
杀尽天下负心人

2025-06-26 13:57:11

如果表名是sql内置的关键字或函数,
需要用中括号括起来.
你这里
insert
into
order(
应该改成
insert
into
[order](

insert
into
[dbo].[order](