DROP TABLE IF EXISTS uchome_com_slave_luck; 
CREATE TABLE uchome_com_slave_luck ( 
  id mediumint(8) NOT NULL auto_increment, 
  `name` mediumtext NOT NULL, 
  amount varchar(8) NOT NULL default '', 
  range mediumint(8) NOT NULL default '0', 
  percent tinyint(3) NOT NULL default '0', 
  perday tinyint(2) NOT NULL default '0', 
  education char(3) NOT NULL default '', 
  experience char(3) NOT NULL default '', 
  health char(3) NOT NULL default '', 
  loyalty char(3) NOT NULL default '', 
  mood char(3) NOT NULL default '', 
  PRIMARY KEY  (id) 
) ENGINE=MyISAM DEFAULT CHARSET=gbk AUTO_INCREMENT=11; 
Error: 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 'range mediumint(8) NOT NULL default '0', percent tinyint(8) NOT NULL default '0' at line 1 

解决方案 »

  1. NOT NULL default '0' at line 1 
    缺省值不能为0~~!
      

  2. 问题在于 range 不能用作字段,改成 range_a之类的就过了。
      

  3. range mediumint(8) NOT NULL default '0',
    你的数据类型是int,默认怎么可以是字符型呢,改成
    range mediumint(8) NOT NULL default 0就可以了
      

  4. 楼主的mysql是什么版本的,你的建表语句在mysql-5.0.22-win32上测试是通过的
      

  5. range是关键字mysql> CREATE TABLE uchome_com_slave_luck (
        ->   id mediumint(8) NOT NULL auto_increment,
        ->   `name` mediumtext NOT NULL,
        ->   amount varchar(8) NOT NULL default '',
        ->   `range` mediumint(8) NOT NULL default '0',
        ->   percent tinyint(3) NOT NULL default '0',
        ->   perday tinyint(2) NOT NULL default '0',
        ->   education char(3) NOT NULL default '',
        ->   experience char(3) NOT NULL default '',
        ->   health char(3) NOT NULL default '',
        ->   loyalty char(3) NOT NULL default '',
        ->   mood char(3) NOT NULL default '',
        ->   PRIMARY KEY  (id)
        -> ) ;
    Query OK, 0 rows affected (0.11 sec)mysql>当您的问题得到解答后请及时结贴.
    http://topic.csdn.net/u/20090501/15/7548d251-aec2-4975-a9bf-ca09a5551ba5.html
      

  6. range是关键字,用``来引用即可。
      

  7. 改为:DROP TABLE IF EXISTS uchome_com_slave_luck;
    CREATE TABLE uchome_com_slave_luck ( 
      `id` mediumint(8) NOT NULL auto_increment, 
      `name` mediumtext NOT NULL, 
      `amount` varchar(8) NOT NULL default '', 
      `range` mediumint(8) NOT NULL default '0', 
      `percent` tinyint(3) NOT NULL default '0', 
      `perday` tinyint(2) NOT NULL default '0', 
      `education` char(3) NOT NULL default '', 
      `experience` char(3) NOT NULL default '', 
      `health` char(3) NOT NULL default '', 
      `loyalty` char(3) NOT NULL default '', 
      `mood` char(3) NOT NULL default '', 
      PRIMARY KEY  (id) 
    ) ENGINE=MyISAM DEFAULT CHARSET=gbk AUTO_INCREMENT=11;刚试验过,建表成功。
      

类似问题 »