Rumah > pembangunan bahagian belakang > tutorial php > Cara menggunakan pembina pertanyaan pangkalan data (Pembina Pertanyaan) dalam rangka kerja CodeIgniter

Cara menggunakan pembina pertanyaan pangkalan data (Pembina Pertanyaan) dalam rangka kerja CodeIgniter

王林
Lepaskan: 2023-07-29 07:10:01
asal
1352 orang telah melayarinya

Cara menggunakan pembina pertanyaan pangkalan data (Pembina Pertanyaan) dalam rangka kerja CodeIgniter

Pengenalan:
CodeIgniter ialah rangka kerja PHP ringan yang menyediakan banyak alatan dan perpustakaan yang berkuasa untuk memudahkan pembangun untuk pembangunan aplikasi web . Salah satu ciri yang paling mengagumkan ialah Query Builder, yang menyediakan cara ringkas dan berkuasa untuk membina dan melaksanakan pertanyaan pangkalan data. Artikel ini akan memperkenalkan cara menggunakan pembina pertanyaan pangkalan data dalam rangka kerja CodeIgniter dan menyediakan beberapa contoh kod.

Teks:

  1. Memulakan konfigurasi pangkalan data
    Sebelum kita mula menggunakan pembina pertanyaan pangkalan data, kita perlu mengkonfigurasi sambungan pangkalan data terlebih dahulu. Dalam fail konfigurasi CodeIgniter (config/database.php), kami boleh menetapkan pemacu pangkalan data, hos, nama pengguna, kata laluan dan maklumat lain. Berikut ialah konfigurasi contoh:
$active_group = 'default';
$query_builder = TRUE;

$db['default'] = array(
    'dsn'   => '',
    'hostname' => 'localhost',
    'username' => 'your_username',
    'password' => 'your_password',
    'database' => 'your_database',
    'dbdriver' => 'mysqli',
    'dbprefix' => '',
    'pconnect' => FALSE,
    'db_debug' => (ENVIRONMENT !== 'production'),
    'cache_on' => FALSE,
    'cachedir' => '',
    'char_set' => 'utf8',
    'dbcollat' => 'utf8_general_ci',
    'swap_pre' => '',
    'encrypt' => FALSE,
    'compress' => FALSE,
    'stricton' => FALSE,
    'failover' => array(),
    'save_queries' => TRUE
);
Salin selepas log masuk
  1. Menyiasat Data
    Menyoal adalah mudah menggunakan pembina pertanyaan pangkalan data. Berikut ialah contoh pertanyaan asas:
$this->db->select('name, email');
$query = $this->db->get('users');
$result = $query->result();

foreach ($result as $row) {
    echo $row->name;
    echo $row->email;
}
Salin selepas log masuk

Dalam contoh di atas, kami mula-mula memanggil kaedah select() untuk menentukan lajur yang perlu kami kembalikan. Kemudian gunakan kaedah get() untuk melaksanakan pertanyaan dan mendapatkan set hasil. Akhir sekali, kita boleh menggunakan kaedah result() untuk menukar set hasil kepada tatasusunan atau objek. Kami kemudiannya boleh mengulangi tatasusunan yang terhasil dan mengakses lajur setiap baris. select()方法指定我们需要返回的列。然后使用get()方法来执行查询并获取结果集。最后,我们可以使用result()方法将结果集转换为数组或对象。然后,我们可以通过循环遍历结果数组并访问每一行的列。

除了基本查询,数据库查询构建器还提供了许多其他方法来进行复杂的查询操作,例如添加筛选条件、排序、分组、连接等。以下是一些常用的方法示例:

  • 添加条件:
$this->db->where('id >=', 100);
$this->db->where('name !=', 'John');
Salin selepas log masuk
  • 排序结果:
$this->db->order_by('name', 'DESC');
Salin selepas log masuk
  • 连接表:
$this->db->join('orders', 'users.id = orders.user_id');
Salin selepas log masuk

以上只是一些示例,您可以根据实际需求来灵活使用这些方法来构建复杂的查询语句。

  1. 插入数据
    除了查询,数据库查询构建器还可以用于插入和更新数据。以下是一个插入数据的示例:
$data = array(
    'name' => 'John',
    'email' => 'john@example.com',
    'phone' => '1234567890'
);

$this->db->insert('users', $data);
Salin selepas log masuk

在上面的示例中,我们首先创建了一个包含要插入的数据的关联数组。然后使用insert()方法将数据插入到名为“users”的表中。

  1. 更新数据
    以下是一个更新数据的示例:
$data = array(
    'name' => 'John Doe',
    'email' => 'john.doe@example.com',
    'phone' => '9876543210'
);

$this->db->where('id', 1);
$this->db->update('users', $data);
Salin selepas log masuk

在上面的示例中,我们首先创建了一个包含要更新的数据的关联数组。然后使用where()方法指定要更新的行,并使用update()

Selain pertanyaan asas, pembina pertanyaan pangkalan data juga menyediakan banyak kaedah lain untuk melaksanakan operasi pertanyaan yang kompleks, seperti menambah syarat penapis, menyusun, mengumpulkan, menyertai, dsb. Berikut ialah beberapa contoh kaedah yang biasa digunakan:


    Tambah syarat:
rrreee
    🎜Isih hasil: 🎜
rrreee
    🎜Sertai jadual: 🎜
rrreee🎜 Di atas Ini hanyalah beberapa contoh Anda boleh menggunakan kaedah ini secara fleksibel untuk membina pernyataan pertanyaan yang kompleks mengikut keperluan sebenar anda. 🎜
    🎜Masukkan data🎜Selain pertanyaan, pembina pertanyaan pangkalan data juga boleh digunakan untuk memasukkan dan mengemas kini data. Berikut ialah contoh memasukkan data: 🎜🎜rrreee🎜 Dalam contoh di atas, kami mula-mula mencipta tatasusunan bersekutu yang mengandungi data yang akan dimasukkan. Kemudian gunakan kaedah insert() untuk memasukkan data ke dalam jadual bernama "pengguna". 🎜
      🎜Kemas kini data🎜Berikut ialah contoh mengemas kini data: 🎜🎜rrreee🎜Dalam contoh di atas, kami mula-mula mencipta tatasusunan bersekutu yang mengandungi data yang akan dikemas kini. Kemudian gunakan kaedah where() untuk menentukan baris yang akan dikemas kini dan kaedah update() untuk mengemas kini jadual. 🎜🎜Ringkasan: 🎜Pembina pertanyaan pangkalan data CodeIgniter ialah alat yang berkuasa dan fleksibel yang boleh membantu kami membina dan melaksanakan pertanyaan pangkalan data dengan mudah. Artikel ini menyediakan kod sampel untuk memulakan konfigurasi pangkalan data, menanyakan data, memasukkan data dan mengemas kini data, dengan harapan dapat membantu anda menggunakan ciri ini dengan lebih baik. Menggunakan pembina pertanyaan pangkalan data, anda boleh mengurus dan mengendalikan pangkalan data anda dengan lebih cekap dan mengelakkan risiko pengekodan keras dan suntikan SQL. 🎜

Atas ialah kandungan terperinci Cara menggunakan pembina pertanyaan pangkalan data (Pembina Pertanyaan) dalam rangka kerja CodeIgniter. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan