我需要批量插入到oracle中。但日期格式不正确。
$data[]=array(
'USER_GROUP_ID'=>$wg_id,
'MENU_LINK_ID'=>$id,
'DATA_STATUS'=>1,
'ENTRY_BY'=>$this->session->userdata['rrss_user']['user_id'],
'ENTRY_DATETIME'=>"to_date('".date('d-M-Y')."','dd/mm/yyyy')"
);
答案 0 :(得分:0)
嘿,我举一个简单的例子,请检查一下我的帮助......
$this->db->insert_batch()
根据您提供的数据生成插入字符串,然后运行查询。您可以将数组或对象传递给函数。以下是使用数组的示例:
$user_id = $this->session->userdata['rrss_user']['user_id'];
$data = array(
array(
'USER_GROUP_ID'=>$wg_id,
'MENU_LINK_ID'=>$id,
'DATA_STATUS'=>1,
'ENTRY_BY' => $user_id,
'ENTRY_DATETIME'=> date('d-M-Y')
),
);
$this->db->insert_batch('mytable', $data);
现在以上工作正常,但如果我尝试将日期('d-M-Y')更改为更精细的任何内容,包括hr / sec / mins
所以它看起来像是因为Oracle DATE类型使用'dMY'作为默认格式,所有它都会接受作为日期字段的字符串表示...想知道是否有人对如何设置带有完整日期时间戳的字段,而不仅仅是'dM-Y'。
没有批处理示例:
$this->db->set('user_name', $name);
$this->db->set('age', $age);
$this->db->set('date',"to_date('$date','dd/mm/yyyy')",false);
$this->db->insert('mytable');