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

Debugging PDO - Lihat Kueri SETELAH Bind?

Itulah satu-satunya mitos paling umum tentang debugging SQL. "Saya perlu melihat kueri setelah persiapan untuk mengetahui apakah terjadi kesalahan". Faktanya adalah, Anda tidak , dan saya akan memberi tahu Anda alasannya.

Setelah kueri disiapkan, placeholder dapat dianggap sebagai string/bilangan bulat yang valid . Anda tidak peduli apa isinya.

Juga, jika Anda mengatur PDO dengan benar, Anda akan mendapatkan PDOException yang mendetail merinci kesalahan yang Anda alami bersama dengan penelusuran balik lengkap di mana kesalahan terjadi, ditambah Anda mendapatkan string kesalahan dari MySQL, yang membuat kesalahan sintaks sangat mudah ditemukan.

Untuk mengaktifkan Pengecualian PDO dan menonaktifkan persiapan yang ditiru:

$pdo = new PDO("mysql:host=localhost;dbname=database_name", "user", "password");
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQLi gagal menyiapkan pernyataan

  2. TIMESTAMP() Contoh – MySQL

  3. Cara menggunakan $_GET untuk mendapatkan beberapa parameter menggunakan nama yang sama di PHP

  4. MySQL mencocokkan karakter unicode dengan versi ascii

  5. Bagaimana cara mengunci database mysql secara eksklusif?