* @package ci2.1.0
* @author longde
* @version 1.0
header('content-type:text/html; charset=utf-8');
* 資料庫控制器
* 該控制器的主要做用是進行資料庫方面的操作。
* @category controllers
* @author longde
class dbc extends ci_controller {
* 測試在同乙個專案中同時使用多個資料庫進行操作
* @access public
* @return array
public function index()
//按照ci手冊中的說法:如果需要同時連線多個資料庫,則採用
//$db1 = $this->load->database('group_one',true);
//$db2 = $this->load->database('group_two',true);
//注意:confing/database.php中的$db[***x]['pconnect'] = false
$db1 = $this->load->database('default',true);//注意第乙個引數:值與配置檔案中的第乙個索引對應
$db2 = $this->load->database('additional', true);//注意第乙個引數:值與配置檔案中的第乙個索引對應
//下面開始進行操作
//首先,在第乙個資料庫test的t_news表中插入資料
$data1 = array(
'title' => '測試在ci框架中同時操作多個資料庫',
'sub_title' => 'ci框架允許使用多個資料庫進行操作。具體的內容請檢視ci手冊......',
'content' => '如果你需要同時連線多於乙個的資料庫,你可以用以下方式來實現:$db1 = $this->load->database(\'group_one\', true);$db2 = $this->load->database(\'group_two\', true);注意:改變 "group_one" 和 "group_two" 為你指定了連線屬性的組名 (或者通過上邊說過的連線陣列的陣列名)。',
'create_time' => date('y-m-d h:i:s'),
'author' => 'longde',
'source' => '原創'
//插入之前先判斷是否已存在
$db1->select('id');
$id1 = $db1->get_where('t_news',array('title' => $data1['title']))->result_array();
if(empty($id1))
//插入資料
$db1->insert('t_news',$data1);
//獲取剛才插入資料時生成的id值
$id1 = $db1->insert_id();
else
$id1 = $id1[0]['id'];
//從資料庫中讀取資料
$result1 = $db1->get_where('t_news',array('id' => $id1))->result_array();
//格式化輸出剛才的讀取結果
echo "
";print_r($result1);
//其次,在第二個資料庫test_other的t_sys_user表中插入資料
$data2 = array(
'role_id' => 1,
'login_name' => 'admin',
'password' => md5('admin'),
'is_admin' => 1,
'create_time' => date('y-m-d h:i:s'),
'status' => 0,
'is_locked' => 0
//插入之前先判斷是否已存在
$db2->select('id');
$id2 = $db2->get_where('t_sys_user',array('login_name' => $data2['login_name']))->result_array();
if(empty($id2))
//插入資料
$db2->insert('t_sys_user',$data2);
//獲取剛才插入資料時生成的id值
$id2 = $db2->insert_id();
else
$id2 = $id2[0]['id'];
//從資料庫中讀取剛才插入的資料
$result2 = $db2->get_where('t_sys_user',array('id' => $id2))->result_array();
//格式化輸出剛才的讀取結果
echo "
";print_r($result2);
/* end of file dbc.php */
ci框架mysql資料庫連線資源無法釋放
使用ci框架提供的類查詢資料 this load database query this db query sql 程式執行一段時間之後,報錯,告知資料庫too many connections 很明顯mysql資料庫連線資源超過了 max connections 設定值。立馬在每個查詢之後,新增資...
ci mysql操作 CI框架資料庫各類操作
單錶增刪改查 乙個類對應乙個表 1 模型層 繼承核心類ci model 2 parent construct 過載初始化建構函式 3 連線資料庫 this load database 4 插入資料 this db insert t name,data 例 function inser arr thi...
CI框架資料庫查詢之join用法分析
用 a表中的每個id 去查詢這個 id 在 people 表中的資訊。語句如下 this db from a this db join b sites.id b.id 用 a表中的每個id 去查詢這個 id 在 b表中的資訊。注意sql的約定,如果乙個列名在二張表中是重複的,你需要在列名前加上表名和...