>  기사  >  백엔드 개발  >  CI 链接mysql 和 mssql

CI 链接mysql 和 mssql

WBOY
WBOY원래의
2016-06-06 20:44:44937검색

由于要将mssql 和 mysql 里面的数据进行对比,So.
配置:database.php

<code>$db['default']['hostname'] = '192.168.1.222';
$db['default']['username'] = 'root';
$db['default']['password'] = 'test';
$db['default']['database'] = 'demo_database';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = 'iwebshop_';
$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['default']['hostname'] = '192.168.1.222';
$db['default']['username'] = 'sa';
$db['default']['password'] = 'test';
$db['default']['database'] = 'demo_database';
$db['default']['dbdriver'] = 'sqlsrv';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['char_set'] = 'utf-8';

</code>

就是不知道怎么调用?

回复内容:

由于要将mssql 和 mysql 里面的数据进行对比,So.
配置:database.php

<code>$db['default']['hostname'] = '192.168.1.222';
$db['default']['username'] = 'root';
$db['default']['password'] = 'test';
$db['default']['database'] = 'demo_database';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = 'iwebshop_';
$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['default']['hostname'] = '192.168.1.222';
$db['default']['username'] = 'sa';
$db['default']['password'] = 'test';
$db['default']['database'] = 'demo_database';
$db['default']['dbdriver'] = 'sqlsrv';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['char_set'] = 'utf-8';

</code>

就是不知道怎么调用?

在model里调用例如 $db=$this->load->database('default',TRUE);
$db->query($sql);
你上面的配置文件是错误的,两个不同的数据库需要区分开,不能用相同的键名default,否则后面的配置会覆盖前面的配置的。上面的代码就是根据键名选择不同数据库的配置的。

$db1=$this->load->database('default',TRUE); $db2=$this->load->database('another',TRUE);

调用多个数据库后不能再用$this->db->query($sql);
只能用$db1->query($sql);

默认的,你可以直接使用 $this->db 就可以使用了。

对于第二个,你需要在default的时候,换一个名称来标识是他们的配置,从而可以通过使用
$db2=$this->load->database('another',TRUE);
来调用

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.