【发布时间】:2015-12-02 21:13:31
【问题描述】:
我在使用字符串搜索日期时间列时遇到问题。
我正在使用 codeigniters insert_batch,但我确信如果我使用 insert,它是一样的。这是我插入的数据示例:
$valor_log_proceso = array(
'id_interno' => 21656,
'proceso_id' => 1,
'fecha_inicio' => '2015-12-02T09:04:59.884',
'fecha_fin' => '2015-12-02T09:20:10.884',
'equipo' => "EQUIPOPC",
'usuario_id' => 2,
'log_envio_id' => 10
);
在 mysql db 'fecha_inicio' 和 'fecha_fin' 中是 datetime colmuns。
每个 $valor_log_proceso 数组中的 'fecha_inicio' 和 'fecha_fin' 值都是从请求中检索到的字符串。
当我尝试使用 get_where 查找该数据时
$valor_log_proceso = array(
'id_interno' => 21656,
'proceso_id' => 1,
'fecha_inicio' => '2015-12-02T09:04:59.884',
'fecha_fin' => '2015-12-02T09:20:10.884',
'equipo' => "EQUIPOPC",
'usuario_id' => 2
);
$result = $this->db->get_where($table_name, $valor_log_proceso)->result_array();
$result 是一个空数组。
然后我检查数据库并查看截断/上限的日期:
fecha_inicio: 2015-12-02 09:05:00
fecha_fin: 2015-12-02 09:20:11
所以问题是为什么会发生这种情况? 如何正确搜索表中的行?
【问题讨论】:
-
列类型设置为什么?整数,varchar?
-
mysql中列的类型就是
datetime -
我从未见过日期时间列包含这样的值
标签: php mysql codeigniter datetime