UPDATE
句はid_publisher
を設定しています 列からNULL
、および、列の名前と受け取ったエラーに基づいて、それ 列はテーブルのPRIMARY KEY
unsigned NOT NULL
の設定で 。
このため、id_publisher = NULL
を実行すると 、MySQLはそれをid_publisher = 0
に変換します unsigned
が原因 部。これは最初は正常に実行されますが、2番目の行で実行すると、秒を挿入しようとします。 0
の主キー値 、許可されていません。
die()
の場所に基づく サンプルコードのステートメントでは、次のブロックが原因であると想定しています。
$data1 = array(
'id_publisher' => $id_publis,
'publisher' => $publis,
'artis' => $ar,
'id_label' => $id_lab);
$this->db->where('id_publisher', $this->input->post('id'), $data);
$this->db->update("t_publisher",$data1);
ここで、$id_publis
変数は空またはnullです。
id_publisher = NULL
を削除することをお勧めします UPDATE
の一部 'id_publisher' => $id_publis,
を削除するのと同じくらい簡単な句 $data1
から 配列、または実際にnull
に設定する必要がある理由を再考してください そもそも(この場合、行を削除する方が有益でしょうか?)