CREATE TABLE children (
   childno int(11) DEFAULT '0' NOT NULL auto_increment,
   fname varchar(30),
   age int(11),
   PRIMARY KEY (childno)
);
我按照这个在MYSQL中创建表但是总是提示default值错误,去掉DEFAULT '0' 这句就没问题了,是在想不明白为何不可以这样,那位仁兄能指点一下。不生感激!

解决方案 »

  1.   

    ‘0’ 是字符不是数字!'0' 不等于 0并且已经是auto_increment了,不需要加这个DEFAULT 直接如下即可。
    CREATE TABLE children (
      childno int(11)  NOT NULL auto_increment,
      fname varchar(30),
      age int(11),
      PRIMARY KEY (childno)
    );
      

  2.   

    设置了“auto_increment”就表示自动增长了,所以不能设置默认值了。
      

  3.   

    CREATE TABLE children (
      childno int(11) NOT NULL auto_increment,
      fname varchar(30),
      age int(11),
      PRIMARY KEY (childno)
    );'0'是字符