不能在mysql表phpmyadmin的字段中“给”空值

时间:2014-04-01 18:34:31

标签: php mysql sql phpmyadmin

我使用phpmyadmin,我有一个包含4个字段的表类别:

- > id

- > id_father_category(我把它与预定义:NULL)并且我也放了一个复选框Null

- > 名称

- > 内容

我想为 id_father_category字段提供空值。

但我有这个错误:

警告:#1366错误的整数值:''对于列' id_father_category字段'在第1行

我的字段id_father_category会自动保留值0,我不希望这样。

有人知道如何解决这个问题吗?

2 个答案:

答案 0 :(得分:2)

CREATE TABLE IF NOT EXISTS `categories` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `id_father_category` int(11) DEFAULT NULL,
  `name` varchar(64) NOT NULL,
  `content` varchar(256) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

希望这能解决你的问题...

答案 1 :(得分:2)

这是@Nirjhor回答的补充。

  

ALTER TABLE类别MODIFY id_father_category INT(11)DEFAULT NULL;

或者您可以重新创建整个事物:

CREATE TABLE IF NOT EXISTS `categories` (   
`id` int(11) NOT NULL AUTO_INCREMENT,   
`id_father_category` int(11) DEFAULT NULL,   
`name` varchar(64) NOT NULL,   
`content` varchar(256) NOT NULL,   
PRIMARY KEY (`id`) ) 
ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

将默认值设置为NULL将处理您的问题并将字段设置为NULL。这里要注意的一件事是确保你没有在该字段上有一些奇怪的索引,这也可能造成问题。