设为首页
收藏本站
Archiver
用户
登录
入住
用户名
Email
自动登录
找回密码
密码
登录
入住 CI 中国社区
首页
返回 CodeIgniter 中国首页
论坛
BBS
导读
Guide
个人主页
Space
中文手册
搜索
CodeIgniter 搜索引擎
视频教程
案例
任务
搜索
搜索
本版
帖子
用户
设为首页
收藏本站
Archiver
开启辅助访问
切换到宽版
日志
相册
分享
记录
CodeIgniter4
CodeIgniter3
CodeIgniter2
帖子
好友
道具
勋章
收藏
任务
记录
留言板
设置
我的收藏
退出
腾讯QQ
微信登录
CodeIgniter 中国开发者社区
»
论坛
›
CodeIgniter 开发
›
CodeIgniter 问答求助
›
求教,CI多数据库连接问题
返回列表
查看:
3053
|
回复:
2
求教,CI多数据库连接问题
[复制链接]
梦醒
梦醒
当前离线
积分
57
IP卡
狗仔卡
发表于 2013-11-7 17:26:47
|
显示全部楼层
|
阅读模式
本人初学php,刚接触CI,想要同时连接SQL server 和Mysql 数据库,本人测试代码如下:
config/database.php配置如下:
$active_group = 'default';
$active_record = TRUE;
$db['default']['hostname'] = 'BB';
$db['default']['username'] = 'dev';
$db['default']['password'] = 'dev123';
$db['default']['database'] = 'dev';
$db['default']['dbdriver'] = 'odbc';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = FALSE;
$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;
$active_group = 'test';
$active_record = TRUE;
$db['test']['hostname'] = 'localhost';
$db['test']['username'] = 'root';
$db['test']['password'] = 'root';
$db['test']['database'] = 'studentdata';
$db['test']['dbdriver'] = 'mysql';
$db['test']['dbprefix'] = '';
$db['test']['pconnect'] = FALSE;
$db['test']['db_debug'] = TRUE;
$db['test']['cache_on'] = FALSE;
$db['test']['cachedir'] = '';
$db['test']['char_set'] = 'utf8';
$db['test']['dbcollat'] = 'utf8_general_ci';
$db['test']['swap_pre'] = '';
$db['test']['autoinit'] = TRUE;
$db['test']['stricton'] = FALSE;
单独运行每个连接都可以执行,同时连接第二个出错,请教如何配置,网上很多代码试过都不行
测试代码:
<?php
class Test extends CI_Controller{
function __construct(){
parent::__construct();
$this->load->helper('form','url');
}
function index(){
$this->load->database('default');
$sql = "SELECT * from person_info";
$query = $this->db->query($sql);
$result = $query->result_array();
foreach($result as $value){
var_dump($value);
}
$this->db->close();
$this->get_mysql();
}
public function get_mysql(){
$this->load->database('test');
$sql = "SELECT * from usr_detail";
$query = $this->db->query($sql);
$result = $query->result_array();
foreach($result as $value){
var_dump($value);
}
}
}
求指点
数据库连接
相关帖子
•
数据库连接
•
SqLite3的驱动自主修改(不需要pdo)1.0.0
•
ci有数据库连接池的支持吗?
•
多数据库连接蛋疼的问题
•
数据库连接问题:Filename: core/Loader.php 346
•
ci_dwz 简单方便后台
•
多个数据库连接问题
•
新人妹子用Ionize时候数据库连接出错求大神解决~
•
数据库连接的时候显示空白
•
关于CI与sqlite3数据库连接后的更新问题
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
显身卡
Ahgigu
Ahgigu
当前离线
积分
647
IP卡
狗仔卡
发表于 2013-11-8 10:38:15
|
显示全部楼层
你在一个action里call另一个action的用法是出错的直接原因。建议你在model里面做这些查询,查完一个库在换一个库,最后汇总给controller。
希望对你有帮助。
回复
支持
反对
使用道具
举报
显身卡
Ahgigu
Ahgigu
当前离线
积分
647
IP卡
狗仔卡
发表于 2013-11-8 10:54:40
|
显示全部楼层
http://ellislab.com/codeigniter/ ... ase/connecting.html
里面有说同时使用不同的库的情形:
PHP
复制代码
$DB1
=
$this
->
load
->
database
(
'group_one'
,
TRUE
)
;
$DB2
=
$this
->
load
->
database
(
'group_two'
,
TRUE
)
;
$DB1
->
query
(
)
;
$DB1
->
result
(
)
;
$DB2
->
query
(
)
;
$DB2
->
result
(
)
;
复制代码
回复
支持
反对
使用道具
举报
显身卡
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
入住 CI 中国社区
本版积分规则
发表回复
回帖后跳转到最后一页