Về cơ bản những gì bạn đang tìm kiếm có thể là INSERT ... ON DUPLICATE KEY UPDATE
- miễn là bạn đang sử dụng MySQL và id của bạn là khóa duy nhất trên bảng.
Bạn phải tạo truy vấn theo cách thủ công và chuyển đến $this->db->query()
thay vì bất kỳ bản ghi hoạt động nào được tích hợp sẵn như các chức năng trợ giúp của Trình điều khiển DB.
Ví dụ:
$sql = 'INSERT INTO menu_sub (id, name, desc, misc)
VALUES (?, ?, ?, ?)
ON DUPLICATE KEY UPDATE
name=VALUES(name),
desc=VALUES(desc),
misc=VALUES(misc)';
$query = $this->db->query($sql, array( $id,
$this->validation->name,
$this->validation->desc,
$this->validation->misc
));