[英]Using the second database in Codeigniter
我正在尝试从Codeigniter中的第二个数据库进行查询,因此在我的数据库配置中,我具有以下内容:
$active_group = 'default';
$active_record = TRUE;
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = '';
$db['default']['database'] = 'gallery';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
$db['tc']['hostname'] = 'localhost';
$db['tc']['username'] = 'root';
$db['tc']['password'] = '';
$db['tc']['database'] = 'timecard';
$db['tc']['dbdriver'] = 'mysql';
$db['tc']['dbprefix'] = '';
$db['tc']['pconnect'] = TRUE;
$db['tc']['db_debug'] = TRUE;
$db['tc']['cache_on'] = FALSE;
$db['tc']['cachedir'] = '';
$db['tc']['char_set'] = 'utf8';
$db['tc']['dbcollat'] = 'utf8_general_ci';
$db['tc']['swap_pre'] = '';
$db['tc']['autoinit'] = TRUE;
$db['tc']['stricton'] = FALSE;
在我的模型方法中,我有以下代码:
public function getAll()
{
$tc = $this->load->database('tc', TRUE);
$sql = "SELECT username, MIN(timeIn)
FROM timecard2.tc_timecard
GROUP BY userid having MIN(timeIn) >? and
MIN(timeIN)<? order by MiN(timeIN);";
$q=$tc->query($sql,'2013-01-08','2013-01-23');
if ($q->num_rows() > 0)
{
foreach ($q->result() as $row) {
$data[] = $row;
}
return $data;
}
}
但它不起作用! 查询第二个数据库是否正确?
如果您需要更多说明,请告诉我哪一部分需要更多说明。
编辑:只是发现它可以正常工作吗? (参数)! 它适用于以下代码:
$sql = "SELECT username, MIN(timeIn)
FROM tc_timecard
GROUP BY userid having
MIN(timeIn) > ? and MIN(timeIN) < '2013-01-23'
order by MiN(timeIN);";
$q=$tc->query($sql,'2013-01-08');
您有任何线索为什么它没有获得第二个参数?
谢谢
每个codeigniter的文档: https : //www.codeigniter.com/user_guide/database/connecting.html
$tc = $this->load->database($db['tc'], TRUE);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.