我长期使用codeigniter 3.0.1版本。 (3年无升级) 我有 a)PHP 5.4.3, b)通知数据库 c)和odbc连接到notifyix说(eadmin)
截至目前,我在config / database.php中具有如下连接 (即在CI 3.0.1中)
$db['default'] = array(
'dsn' => 'eadmin',
'hostname' => 'localhost',
'username' => ''
'password' => '',
'database' => 'eadmin'
'dbdriver' => 'odbc',
'dbprefix' => '',
'pconnect' => TRUE,
'db_debug' => TRUE,
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array()
);
我的项目非常顺利。 在我的模型中,我曾经使用
进行查询$rows = $this->db->select('perno, name')
->where('grade','10')
->get('employees');
$data = $rows->result_array();
var_dump($data);
我能够完美地得到结果并处理。
问题是,现在我升级了CI版本3.1.9,并保持了与上述相同的连接参数。但是上述查询构建失败。
它说找不到方法。此外,我在$this->db->
之后给出的任何方法都会在该行上产生错误。
例如
$this->db->query("select perno, name from employees");
$this->db->get('employees');
等给出错误。
我也使用Oracle进行了测试,但出现了上述错误。 请注意,我正在使用ODBC驱动程序。
我该怎么办?任何解决方案都值得赞赏。
答案 0 :(得分:0)
我想您会在this page of upgrade instructions上找到问题的答案。如果我正确理解它,则表示如果使用odbc,则不能使用查询生成器。
可能在某个地方狂奔了CodeIgniter的第三方notifyix驱动程序。一点Google时间应该可以帮助您找到它。
CI建议使用PHP 5.6或更高版本。那可能不是“表演的终结者”,但如果可以的话,这样做是明智的。