kaz
okui****@sanne*****
2009年 4月 13日 (月) 22:49:15 JST
こんばんは、kazです。
DBでおかしな事があり悩んでいます。空のテーブルにデータを挿入したらエラーがでます。
phpの部分
$data = array('delete_date' => date('Y-m-d-H:i:s',time()),
'date' => $row->date,
'station' => $row->station,
'location' => $row->location,
'file' => $row->file,
'program' => $row->program,
'title' => $row->title,
'info' => $row->info,
'tuner' => $row->tuner
);
$this->db->insert('trash', $data);
CIが出したエラーメッセージ
A Database Error Occurred
Error Number: 1062
Duplicate entry 'hirakata20090411-1110-T1.mp3' for key 2
INSERT INTO `trash` (`delete_date`, `date`, `station`, `location`, `file`, `program`, `title`, `info`, `tuner`) VALUES ('2009-04-13-22:06:15', '2009-04-11 11:10:03', '2', '/RADIO/fm-radio/2009/hirakata', 'hirakata20090411-1110-T1.mp3', 'test1', '', '', 'Sony ST-J60')
テーブルtrashは
mysql> desc trash;
+-------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| delete_date | datetime | YES | | NULL | |
| date | datetime | YES | | NULL | |
| station | int(11) | YES | | NULL | |
| location | varchar(50) | YES | | NULL | |
| file | varchar(30) | NO | UNI | | |
| program | varchar(50) | YES | | NULL | |
| title | varchar(50) | YES | | NULL | |
| info | varchar(800) | YES | | NULL | |
| tuner | char(20) | YES | | NULL | |
+-------------+--------------+------+-----+---------+----------------+
CIではエラーになっていますがtrashテーブルにはデータ1件が挿入されています。
ターミナルからdelete from trash;でデータを消してから、直接mysqlコマンドで上記のCIが出したsqlを入力したらエラーメッセージはでません。
どうしてもわからないのでなにかヒントをご教授お願いします。