Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Codeigniter simple_query so với trình tạo truy vấn (chèn, cập nhật và xóa)

simple_query() là phương thức cơ sở dữ liệu duy nhất trong CodeIgniter hoạt động như bạn đã chỉ ra. Như tài liệu nói:"Hầu hết người dùng sẽ hiếm khi sử dụng chức năng này."

Với một vài ngoại lệ, tất cả các phương thức Trình tạo truy vấn khác đều trả về DB_query_builder ví dụ một CI_DB_result đối tượng hoặc - trong trường hợp truy vấn kiểu "ghi" - một Boolean cho biết thành công hay thất bại. Một số ngoại lệ trả về một số nguyên, chuỗi hoặc hỗn hợp (một giá trị hoặc FALSE).

Tất cả các phương thức chấp nhận giá trị đầu vào đều thoát (hoặc tùy chọn không thoát) các giá trị được cung cấp.

Mặc dù Query Builder (QB) là một công cụ tuyệt vời nhưng nó thường không cần thiết. Sử dụng $this->db->query('your statement here'); thường hiệu quả hơn. Hiểu mục tiêu của QB là tạo một chuỗi được sử dụng theo nghĩa đen trong lệnh gọi tới db->query('a query string'); .

Vì vậy, thay vì nhập tất cả những thứ này ...

$this->db->select('id, name, email');
$this->db->from('customers');
$this->db->where('id', $id)
$this->db->where('active', $is_active)
$query = $this->get();
$result = $query->result();

Nhập vào phần sau sẽ tạo ra kết quả chính xác giống như ở trên vì nó cung cấp trực tiếp chuỗi truy vấn mà QB đã xây dựng trong đoạn mã trên. (Truy vấn cũng được thoát hoàn toàn.) Nhưng nó thực thi ít mã hơn để đến đó. (Với Ít đánh máy hơn.)

$query = $this->db->query("Select id, name, email from customers where id = ? and active = ?", [$id, $is_active]);
$result = $query->result();

Đây là ví dụ về việc sử dụng Liên kết truy vấn

Nghiên cứu mã nguồn cốt lõi (chủ yếu là trong các tệp 'trình điều khiển') sẽ cho bạn thấy nơi sử dụng simple_query() là phù hợp và hữu ích.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chọn điểm từ cơ sở dữ liệu bản đồ theo bán kính

  2. Cột 'user_id' trong danh sách trường không rõ ràng

  3. Đặt múi giờ trong PHP và MySQL

  4. Gửi email từ trình kích hoạt MySQL khi một bảng được cập nhật

  5. Cách xem tiến trình tải lên .csv trong MySQL