看起來像您的「post_id」屬性,這可能是您的主鍵,沒有設置爲「自動遞增」或在數據庫中設置爲「不爲空」。看看下面的ORM。與您的數據進行比較並修復您的DB側錯誤。別忘了通過升級你的模型。 GII!
-- -----------------------------------------------------
-- Table `mydb`.`tbl_comment`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `mydb`.`tbl_comment` ;
CREATE TABLE IF NOT EXISTS `mydb`.`tbl_comment` (
`post_id` INT NOT NULL,
`status` VARCHAR(45) NULL,
`content` TEXT NULL COMMENT ' ',
`author` VARCHAR(255) NULL,
`email` VARCHAR(255) NULL,
`url` VARCHAR(511) NULL,
`create_time` DATETIME NULL,
PRIMARY KEY (`post_id`))
ENGINE = InnoDB;
否則,如果「POST_ID」是不是你的主鍵,並沒有被設置爲「自動增量」你可以試試這個修復它:
解決辦法1)製作「 POST_ID」設置之前保存/更新中,如PHP:
$model = new Tbl_comment; //hope this is your Yii model name...
$model->post_id = 123
if(!$model->save()) {
var_dump($model->errors);
}
解決方案2)在d添加默認值atabase ORM屬性「post_id」。 (因爲我不知道你們的關係和ORM的權利。)
-----------------------------------------
-- Table `mydb`.`tbl_comment`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `mydb`.`tbl_comment` ;
CREATE TABLE IF NOT EXISTS `mydb`.`tbl_comment` (
`post_id` INT NULL DEFAULT someDefault,
`status` VARCHAR(45) NULL,
`content` TEXT NULL COMMENT ' ',
`author` VARCHAR(255) NULL,
`email` VARCHAR(255) NULL,
`url` VARCHAR(511) NULL,
`create_time` DATETIME NULL)
ENGINE = InnoDB;
表的細節:
來源
2014-09-01 14:07:31
lin
您還沒有設置在插入查詢的POST_ID值。你需要將它的值設置爲一個外鍵 – 2014-09-01 12:43:27
這是,http://codepad.org/EO50vNeN – user1502 2014-09-01 12:54:22