在 CodeIgniter(CI)框架開發中,資料庫操作是核心功能之一。本文詳細介紹如何使用 CI 的 Active Record 類別進行單筆與多筆資料插入,並提供實用代碼範例供參考。
使用 insert() 方法可輕鬆將一筆資料寫入資料表。以下範例展示向 mytable 表插入標題、姓名與日期三個欄位:
$data = array(
'title' => 'My title',
'name' => 'My Name',
'date' => 'My date'
);
$this->db->insert('mytable', $data);
執行後產生的 SQL 語句為:
INSERT INTO mytable (title, name, date) VALUES ('My title', 'My name', 'My date')
當需要一次寫入多筆資料時,insert_batch() 方法能顯著提升效能,減少資料庫連線開銷。範例如下:
$data = array(
array(
'title' => 'My title',
'name' => 'My Name',
'date' => 'My date'
),
array(
'title' => 'My title1',
'name' => 'My Name1',
'date' => 'My date1'
)
);
$this->db->insert_batch('mytable', $data);
對應的 SQL 語句:
INSERT INTO mytable (title, name, date) VALUES
('My title', 'My name', 'My date'),
('My title1', 'My name1', 'My date1')
insert_batch() 而非迴圈呼叫 insert()$this->db->trans_start() / trans_complete())確保資料一致性掌握這兩種插入方式,能讓你在 CI 專案中更靈活地處理各類資料寫入需求。