简体   繁体   English

Mysql 错误 #1064 创建表

[英]Mysql error #1064 create table

I am trying to upload a sql file to my phpmyadmin.我正在尝试将 sql 文件上传到我的 phpmyadmin。

I've got the following error我有以下错误

#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 

here is code where is error:这是错误的代码:

  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 ;

I am not sure whats wrong, it seem's everything is ok.我不确定出了什么问题,似乎一切正常。

In this case you dont need "escape characters"在这种情况下,您不需要“转义字符”

Edit:编辑:

An example where you must use escape characters:必须使用转义字符的示例:

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

你错过了结束括号)

  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 ;)

Dimas answered you.迪马斯回答你。 Don't need escape characters for setup default value of field.不需要转义字符来设置字段的默认值。 Proper SQL query:正确的 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 ;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM