错误号:1292 在我的 SQL 错误中截断了不正确的 DOUBLE 值

Posted

技术标签:

【中文标题】错误号:1292 在我的 SQL 错误中截断了不正确的 DOUBLE 值【英文标题】:Error Number: 1292 Truncated incorrect DOUBLE value in my SQL error 【发布时间】:2018-10-01 03:09:51 【问题描述】:

我有这样的显示错误 1292 截断不正确的 DOUBLE 值 这是我在代码点火器模型中的删除操作功能代码

public function delete_marks($s_id)
           $this->db->where_not_in('student_id', $s_id);
           return  $this->db->delete('student_marks');
       

及其显示错误

错误号:1292 截断不正确的 DOUBLE 值:'305,304' DELETE FROM student_marks WHERE student_id NOT IN ('305,304')

因为在这部分'305,304'单个配额' '自动添加 所以它显示1292错误 如何解决?

【问题讨论】:

$this->db->where_not_in('student_id',explode(',', $s_id)); 【参考方案1】:

看起来你的$s_id 是字符串。在 CI 中,where_not_inwhere_in 你必须传递数组。

public function delete_marks($s_id)
    $s_id = explode(",", $s_id);
    $this->db->where_not_in('student_id', $s_id);
    return  $this->db->delete('student_marks');

【讨论】:

【参考方案2】:

where_not_in 中你必须传递一个数组。

public function delete_marks($s_id)
    $this->db->where_not_in('student_id',explode(',', $s_id));
    return  $this->db->delete('student_marks');

【讨论】:

以上是关于错误号:1292 在我的 SQL 错误中截断了不正确的 DOUBLE 值的主要内容,如果未能解决你的问题,请参考以下文章

从 Excel 导入 SQL Server 2005 时出现截断错误

数据库异常后的SQL超时

某些服务器上的 MySQL 数据截断错误

oracle ORA-06502:PL/SQL:数字或值错误:批量绑定:截断绑定

插入 SQL Server 时 Pentaho 错误数据被截断

ORA - 06502:PL/SQL:数字或值错误:批量绑定:截断绑定