title: MySQL and foreign key conflicts when trying to INSERT
body: <p>I'm doing the Agile Yii book.</p>
  <p>Anyway, I'm trying to execute this command:</p>
  <pre><code>INSERT INTO tbl_project_user_assignment (project_id, user_id) values ('1','1'), ('1','2');
  </code></pre>
  <p>And I get this error:</p>
  <pre><code>ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint fails (`trackstar_dev`.`tbl_project_user_assignment`, CONSTRAINT `FK_project_user` FOREIGN KEY (`project_id`) REFERENCES `tbl_project` (`id`) ON DELETE CASCADE)
  </code></pre>
  <p>So.. I figure let's see if tbl_project table have project_id=1. Did a quick SELECT * FROM tbl_project; and the project exist.</p>
  <p>Ok then let's just check the user, SELECT * FROM tbl_user; Yup 2 user with id 1 and 2.</p>
  <p>What am I doing wrong? Is there a typo? The agile yii book have several typos but they're not as serious and it's too new so there's no errata reported (checked already).</p>
  <p>Here's the database schema from the source code:</p>
  <pre><code>-- Disable foreign keys
  SET FOREIGN_KEY_CHECKS = 0 ;
  
  -- Create tables section -------------------------------------------------
  
  -- Table tbl_project
  
  CREATE TABLE IF NOT EXISTS `tbl_project` (
    `id` INTEGER NOT NULL auto_increment,
    `name` varchar(128) NOT NULL,
    `description` text NOT NULL,
    `create_time` DATETIME default NULL,
    `create_user_id` INTEGER default NULL,
    `update_time` DATETIME default NULL,
    `update_user_id` INTEGER default NULL,
    PRIMARY KEY  (`id`)
  ) ENGINE = InnoDB
  ;
  
  -- DROP TABLE IF EXISTS `tbl_issue` ;
  
  CREATE TABLE IF NOT EXISTS `tbl_issue` 
  ( 
    `id` INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT,
    `name` varchar(256) NOT NULL,
    `description` varchar(2000), 
    `project_id` INTEGER,
    `type_id` INTEGER,
    `status_id` INTEGER,
    `owner_id` INTEGER,
    `requester_id` INTEGER,
    `create_time` DATETIME,
    `create_user_id` INTEGER,
    `update_time` DATETIME,
    `update_user_id` INTEGER  
  ) ENGINE = InnoDB
  ; 
  
  -- DROP TABLE IF EXISTS `tbl_user` ;
  
  -- Table User
  
  CREATE TABLE IF NOT EXISTS `tbl_user` 
  (
    `id` INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT,
    `email` Varchar(256) NOT NULL,
    `username` Varchar(256),
    `password` Varchar(256),
    `last_login_time` Datetime,
    `create_time` DATETIME,
    `create_user_id` INTEGER,
    `update_time` DATETIME,
    `update_user_id` INTEGER
  ) ENGINE = InnoDB
  ; 
  
  -- DROP TABLE IF EXISTS `tbl_project_user_assignment` ;
  
  -- Table User
  
  CREATE TABLE IF NOT EXISTS `tbl_project_user_assignment`
  (
    `project_id` Int(11) NOT NULL,
    `user_id` Int(11) NOT NULL,
    `create_time` DATETIME,
    `create_user_id` INTEGER,
    `update_time` DATETIME,
    `update_user_id` INTEGER,
   PRIMARY KEY (`project_id`,`user_id`)
  ) ENGINE = InnoDB
  ;
  
  
  -- The Relationships 
  ALTER TABLE `tbl_issue` ADD CONSTRAINT `FK_issue_project` FOREIGN KEY (`project_id`) REFERENCES `tbl_project` (`id`) ON DELETE CASCADE ON UPDATE RESTRICT;
  
  ALTER TABLE `tbl_issue` ADD CONSTRAINT `FK_issue_owner` FOREIGN KEY (`owner_id`) REFERENCES `tbl_user` (`id`) ON DELETE CASCADE ON UPDATE RESTRICT; 
  
  ALTER TABLE `tbl_issue` ADD CONSTRAINT `FK_issue_requester` FOREIGN KEY (`requester_id`) REFERENCES `tbl_user` (`id`) ON DELETE CASCADE ON UPDATE RESTRICT; 
  
  ALTER TABLE `tbl_project_user_assignment` ADD CONSTRAINT `FK_project_user` FOREIGN KEY (`project_id`) REFERENCES `tbl_project` (`id`) ON DELETE CASCADE ON UPDATE RESTRICT;
  
  ALTER TABLE `tbl_project_user_assignment` ADD CONSTRAINT `FK_user_project` FOREIGN KEY (`user_id`) REFERENCES `tbl_user` (`id`) ON DELETE CASCADE ON UPDATE RESTRICT;   
  
  -- Insert some seed data so we can just begin using the database
  INSERT INTO `tbl_user` 
    (`email`, `username`, `password`) 
  VALUES 
    ('test1@notanaddress.com','Test_User_One', MD5('test1')),
    ('test2@notanaddress.com','Test_User_Two', MD5('test2'))    
  ;
  
  -- Enable foreign keys
  SET FOREIGN_KEY_CHECKS = 1 ;
  </code></pre>
  <p>Anyway, thanks in advance!</p>
  <p>EDIT:
  Clarification that the project does indeed exist ^^.</p>
  <p>mysql&gt; select id,name from tbl_project;</p>
  <p>+----+-------------------+</p>
  <p>| id | name              |</p>
  <p>+----+-------------------+</p>
  <p>|  6 | Project 1         |</p>
  <p>|  1 | project zombied 1 |</p>
  <p>+----+-------------------+</p>
  <p>2 rows in set (0.00 sec)</p>