用户
 找回密码
 入住 CI 中国社区
搜索
查看: 2156|回复: 3
收起左侧

[版本 3.x] CI中切换数据库

[复制链接]
发表于 2016-8-2 13:22:11 | 显示全部楼层 |阅读模式
新手请教个问题怎么按照文档同一个连接切换数据库却不行.代码:$this->db->db_select('databaseName');
执行这句后 再执行
$this->db->query($sql);得到的查询结果还是没切换之前那个库的数据

发表于 2016-8-2 14:15:14 | 显示全部楼层
請參閱 : CI 手冊 (en) - 更新紀錄

似乎是有 bug 而被 cache 住了
於 CI 3.1 做了修正
 
 楼主| 发表于 2016-8-2 15:16:00 | 显示全部楼层
一楼你好,我刚才到官网下载了3.1.0版本,把下载下来的压缩包中的 system目录覆盖我工程中的对应目录,然后测试,结果还是相同的数据。为了排除是数据库有相同数据的原因,这次的sql语句查询了上一个库不存在的表,这个时候 异常提示 :A Database Error Occurred

Error Number: 42S02/208

[Microsoft][ODBC Driver 11 for SQL Server][SQL Server]对象名 'base_product' 无效。

说明数据库根本没有切换。代码如下:
public function prodList()
    {
        $sql = "select s_id prodId,s_Name prodName,PrePrice2 prodPrice,s_Remark prodDescription from base_product where b_isSaleOnline=1";
        $this->db->db_select($this->database);//断点这里的database是没问题的
        $res = $this->db->query($sql);
        $data['prod_entries'] = $res->result_array();
        for($i = 0;$i < count($data['prod_entries']);$i++){
            $data['prod_entries'][$i]['prodPrice'] = number_format($data['prod_entries'][$i]['prodPrice'], 2, '.', '');
        }
        return $data;
    }
 楼主| 发表于 2016-8-2 15:42:50 | 显示全部楼层
补充:数据库是用的pdo连接的mssqlserver2014

本版积分规则