首頁 >後端開發 >php教程 >CI 链接mysql 和 mssql

CI 链接mysql 和 mssql

WBOY
WBOY原創
2016-06-06 20:44:44971瀏覽

由于要将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