如何在CodeIgniter中获取活动记录插入的结果

Mag*_*gic 4 activerecord codeigniter

我在CodeIgniter中使用活动记录.
我可以成功地将数据插入数据库.
但是如何在失败时获取插入sql的结果?
现在它返回一个关于sql错误的html说明.
我不想要这个HTML内容.

编辑

$data = array(
   'title' => 'My title' ,
   'name' => 'My Name' ,
   'date' => 'My date'
);

$this->db->insert('mytable', $data); 
Run Code Online (Sandbox Code Playgroud)

简单的代码.但是当'name'列具有唯一属性时.我正在为它插入一个重复的值.它返回sql错误的html内容.

我只是想让它返回错误代码而不输出html内容.

dan*_*eth 15

若要不获取数据库错误消息,请确保您具有$db['default']['db_debug'] = FALSE该文件/application/config/database.php.

在您完成(尝试)插入后,您可以运行:

$num_inserts = $this->db->affected_rows();

如果结果为0,则插入失败,您可以显示自己选择的错误消息.

  • 我不知道它之前是怎么回事,但$ this-> db-> affected_rows()实际上在失败时返回-1(插入后).如果在更新查询后没有更新行,则返回0. (2认同)