Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana saya bisa Menggunakan Pernyataan yang Disiapkan di CodeIgniter

CodeIgniter tidak mendukung Pernyataan yang Disiapkan. Jika Anda melihat kode sumber untuk kelas Database CI, Anda akan melihat bahwa mereka menyelesaikan pengikatan hanya dengan mengganti tanda tanya dengan data dari larik yang diteruskan:

Mereka hanya mendukung Pengikatan Kueri dengan placeholder yang tidak disebutkan namanya. Lihat http://ellislab.com/codeigniter/user-guide/database/ query.html

Pengikatan Kueri

Binding memungkinkan Anda menyederhanakan sintaks kueri dengan membiarkan sistem menyatukan kueri untuk Anda. Perhatikan contoh berikut:

$sql = "SELECT * FROM some_table WHERE id = ? AND status = ? AND author = ?";
$this->db->query($sql, array(3, 'live', 'Rick'));

Tanda tanya dalam kueri secara otomatis diganti dengan nilai dalam larik di parameter kedua dari fungsi kueri.

dan http://ellislab.com/forums/viewthread/105112/#528915

Meskipun CI tidak mendukung pernyataan yang disiapkan, CI mendukung Query Bindings. Dengan pernyataan yang disiapkan, Anda harus memanggil beberapa jenis fungsi prepare() dan kemudian beberapa jenis fungsi execute(). Dengan binding kueri, Anda hanya perlu memanggil satu fungsi dan pada dasarnya melakukan hal yang sama. Karena itu, saya lebih menyukai binding kueri daripada pernyataan yang disiapkan.

Di sidenote, mengubah ? ke :foo hanya berubah dari binding yang tidak disebutkan namanya menjadi bernama (yang tampaknya juga tidak didukung oleh CI). Hanya karena Anda menggunakan salah satu atau tidak berarti Anda sedang mempersiapkan pernyataan.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PADA KUNCI DUPLICATE + AUTO INCREMENT masalah mysql

  2. Neo4j - Hapus Hubungan menggunakan Cypher

  3. java.sql.SQLException Indeks parameter di luar rentang (1> jumlah parameter, yaitu 0)

  4. Cara Mendapatkan Ukuran Tabel di MySQL

  5. Bagaimana Anda bergabung di tabel yang sama, dua kali, di mysql?