CodeIgniter框架同時連接多個數據庫
一 、配置數據庫
1. 描述:CodeIginter有一個配置文件讓你存放數據庫連接值(username:用戶名,password:密碼,database name:數據庫名,等等......) 2. 文件位置:該配置文件位于application/config/database.php 3. 注意事項:除默認數據庫外其他的數據庫的pconnect鍵名對應的鍵值為FALSE 4. 示例: $active_group = 'default'; $active_record = TRUE; $db['default']['hostname'] = 'localhost'; //數據庫的主機名,通常位于本機,可以表示為“localhost” $db['default']['username'] = 'root'; //需要連接到數據庫的用戶名 $db['default']['password'] = '123456'; //登陸數據庫的密碼 $db['default']['database'] = 'db1'; //你需要連接的數據庫名 $db['default']['dbdriver'] = 'mysql'; //數據庫類型。例如:mysql,postgres,odbc等。必須以小寫字母 $db['default']['dbprefix'] = ''; //當運行Active Record查詢時數據表的前綴,它允許在一個數據庫連接上安裝多個CodeIgniter程序 $db['default']['pconnect'] = TRUE; // TRUE/FALSE(boolean)-使用持續鏈接 $db['default']['db_debug'] = TRUE; //TRUE/FALSE(boolean)-顯示數據庫錯誤信息 $db['default']['cache_on'] = FALSE; //TRUE/FALSE(boolean)-數據庫查詢緩存是否開啟。詳情見CodeIgniter數據庫緩存類 $db['default']['cachedir'] = ''; //數 據庫查詢緩存目錄所在服務器 絕對路徑 $db['default']['char_set'] = 'utf8'; //與數據庫通信時所使用的字符集 $db['default']['dbcollat'] = 'utf8_general_ci'; //與數據庫通信時所使用的字符規則 $db['default']['swap_pre'] = ''; //替換默認的dbprefix表前綴,該設置項對于分別式應用是非常有用的,你可以查詢中使用由最終用戶定制的表前綴 $db['default']['autoinit'] = TRUE; //當數據庫(database library)被載入的時候是否需要自動連接數據庫,如果設置為FALSE, 將在首次查詢前進行連接 $db['default']['stricton'] = FALSE; //TRUE/FALSE(boolean)-是否強制使用“Strict Mode”鏈接,在開發程序時,使用strict SQL是一個好習慣 $db['db2']['hostname'] = 'localhost'; $db['db2']['username'] = 'root'; $db['db2']['password'] = 123456'; $db['db2']['database'] = 'db2'; $db['db2']['dbdriver'] = 'mysql'; $db['db2']['dbprefix'] = ''; $db['db2']['pconnect'] = FALSE; //特別注意哦 $db['db2']['db_debug'] = TRUE; $db['db2']['cache_on'] = FALSE; $db['db2']['cachedir'] = ''; $db['db2']['char_set'] = 'utf8'; $db['db2']['dbcollat'] = 'utf8_general_ci'; $db['db2']['swap_pre'] = ''; $db['db2']['autoinit'] = TRUE; $db['db2']['stricton'] = FALSE;
二、在model中連接數據庫
1. 示例: class test_model extends CI_Model{ var $db_connect1; var $db_connect2; public function __construct(){ parent::__construct(); $this->db_connect1 = $this->load->database('default', TRUE); $this->db_connect2= $this->load->database ('db2', TRUE); } public function get_db1($date){ $query = $this->db_connect1->query("SELECT * FROM db1 where date='$date'"); return $query->row_array(); } public function get_db2($date){ $query = $this->db_connect2->query("SELECT * FROM db2 where date='$date'"); return $query->row_array(); } }
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!