请帮忙看看这句语句的错误,alter table `role` add column temp int;  
提示:mysql - #1067 - Invalid default value  conpass

解决方案 »

  1.   

    show create table `role`贴出来看一下。
      

  2.   

    role CREATE TABLE `role` (
      `Id` int(6) unsigned NOT NULL AUTO_INCREMENT,
      `Name` varchar(8) NOT NULL DEFAULT '',
      `TypeId` int(4) NOT NULL DEFAULT '0',
      `Level` tinyint(4) NOT NULL DEFAULT '1',
      `Phyle` tinyint(4) NOT NULL DEFAULT '1',
      `Money` bigint(8) NOT NULL DEFAULT '0',
      `rexp` bigint(8) NOT NULL DEFAULT '0',
      `rtitle` int(4) NOT NULL DEFAULT '1',
      `Scene` int(4) NOT NULL DEFAULT '0',
      `GuildId` int(6) unsigned NOT NULL DEFAULT '0',
      `GuildName` varchar(10) NOT NULL DEFAULT '',
      `GuildAutho` tinyint(1) NOT NULL DEFAULT '0',
      `GuildContrib` int(4) NOT NULL DEFAULT '0',
      `pk` int(4) NOT NULL DEFAULT '0',
      `killed` int(4) NOT NULL DEFAULT '0',
      `Head` int(4) NOT NULL DEFAULT '0',
      `Color1` int(6) NOT NULL DEFAULT '0',
      `Color2` int(6) NOT NULL DEFAULT '0',
      `Pei1` int(6) NOT NULL DEFAULT '0',
      `Pei2` int(6) NOT NULL DEFAULT '0',
      `Pei3` int(6) NOT NULL DEFAULT '0',
      `Pei4` int(6) NOT NULL DEFAULT '0',
      `conpwd` varchar(5) NOT NULL DEFAULT '000000',
      `Rank` tinyint(1) NOT NULL DEFAULT '0',
      `Prestige` int(4) NOT NULL DEFAULT '0',
      `Marry` varchar(10) DEFAULT NULL,
      `jiangli` tinyint(4) NOT NULL DEFAULT '0',
      PRIMARY KEY (`Id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=13958 DEFAULT CHARSET=gbk
      

  3.   

    你的语句有问题啊,你的`conpwd` varchar(5) NOT NULL DEFAULT '000000', 一共才定义了五位,怎么默认是6个0?
    另外你的表中根本没有 conpass 这个字段? 
    你贴是你的CREATE 语句吗? 建议贴你实际的东西。mysql> CREATE TABLE `role` (
        ->  `Id` int(6) unsigned NOT NULL AUTO_INCREMENT,
        ->  `Name` varchar(8) NOT NULL DEFAULT '',
        ->  `TypeId` int(4) NOT NULL DEFAULT '0',
        ->  `Level` tinyint(4) NOT NULL DEFAULT '1',
        ->  `Phyle` tinyint(4) NOT NULL DEFAULT '1',
        ->  `Money` bigint(8) NOT NULL DEFAULT '0',
        ->  `rexp` bigint(8) NOT NULL DEFAULT '0',
        ->  `rtitle` int(4) NOT NULL DEFAULT '1',
        ->  `Scene` int(4) NOT NULL DEFAULT '0',
        ->  `GuildId` int(6) unsigned NOT NULL DEFAULT '0',
        ->  `GuildName` varchar(10) NOT NULL DEFAULT '',
        ->  `GuildAutho` tinyint(1) NOT NULL DEFAULT '0',
        ->  `GuildContrib` int(4) NOT NULL DEFAULT '0',
        ->  `pk` int(4) NOT NULL DEFAULT '0',
        ->  `killed` int(4) NOT NULL DEFAULT '0',
        ->  `Head` int(4) NOT NULL DEFAULT '0',
        ->  `Color1` int(6) NOT NULL DEFAULT '0',
        ->  `Color2` int(6) NOT NULL DEFAULT '0',
        ->  `Pei1` int(6) NOT NULL DEFAULT '0',
        ->  `Pei2` int(6) NOT NULL DEFAULT '0',
        ->  `Pei3` int(6) NOT NULL DEFAULT '0',
        ->  `Pei4` int(6) NOT NULL DEFAULT '0',
        ->  `conpwd` varchar(5) NOT NULL DEFAULT '000000',
        ->  `Rank` tinyint(1) NOT NULL DEFAULT '0',
        ->  `Prestige` int(4) NOT NULL DEFAULT '0',
        ->  `Marry` varchar(10) DEFAULT NULL,
        ->  `jiangli` tinyint(4) NOT NULL DEFAULT '0',
        ->  PRIMARY KEY (`Id`)
        -> ) ENGINE=MyISAM ;
    ERROR 1067 (42000): Invalid default value for 'conpwd'
    mysql>
      

  4.   

    不好意思啊,那个是我写错。。有点晕,呵呵但那个show是我查询出来的,请教怎么解决这个问题