Mysql错误#1064创建表

时间:2016-08-10 06:42:54

标签: php mysql mysql-error-1064

我正在尝试将sql文件上传到我的phpmyadmin。

我收到以下错误

#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 '\'\',


 `from_img` varchar(200) NOT NULL default \'nophoto.gif\',
  `from_id` in' at line 3 

这里的代码是错误:

  CREATE TABLE `privatechat` (
  `id` int(10) unsigned NOT NULL auto_increment,
  `from` varchar(255) character set utf8 NOT NULL default \'\',
  `from_img` varchar(200) NOT NULL default \'nophoto.gif\',
  `from_id` int(11) NOT NULL default \'0\',
  `to` varchar(255) character set utf8 NOT NULL default \'\',
  `to_img` varchar(200) NOT NULL default \'nophoto.gif\',
  `to_id` int(11) NOT NULL default \'0\',
  `message` text character set utf8 NOT NULL,
  `sent` datetime NOT NULL default \'0000-00-00 00:00:00\',
  `recd` int(10) unsigned NOT NULL default \'0\',
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

我不确定什么是错的,似乎一切都还好。

3 个答案:

答案 0 :(得分:2)

在这种情况下,您不需要"转义字符"

修改

必须使用转义字符的示例:

SELECT * FROM table WHERE `column` = 'this is \'escaped\''

答案 1 :(得分:0)

你错过了关闭的支架)

  CREATE TABLE `privatechat` ( id int(10) unsigned NOT NULL auto_increment, from varchar(255) character set utf8 NOT NULL default \'\', from_img varchar(200) NOT NULL default \'nophoto.gif\', from_id int(11) NOT NULL default \'0\', to varchar(255) character set utf8 NOT NULL default \'\', to_img varchar(200) NOT NULL default \'nophoto.gif\', to_id int(11) NOT NULL default \'0\', message text character set utf8 NOT NULL, sent datetime NOT NULL default \'0000-00-00 00:00:00\', recd int(10) unsigned NOT NULL default \'0\', PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;)

答案 2 :(得分:0)

迪马斯回答你。不需要转义字符来设置字段的默认值。 正确的SQL查询:

 CREATE TABLE privatechat (
  id int(10) unsigned NOT NULL auto_increment,
  from varchar(255) character set utf8 NOT NULL default '',
  from_img varchar(200) NOT NULL default 'nophoto.gif',
  from_id int(11) NOT NULL default '0',
  to varchar(255) character set utf8 NOT NULL default '',
  to_img varchar(200) NOT NULL default 'nophoto.gif',
  to_id int(11) NOT NULL default '0',
  message text character set utf8 NOT NULL,
  sent datetime NOT NULL default '0000-00-00 00:00:00',
  recd int(10) unsigned NOT NULL default '0',
  PRIMARY KEY  (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;