Rumah >pangkalan data >tutorial mysql >Bagaimana untuk memeriksa dengan elegan jika Jadual MySQL Wujud Menggunakan PDO PHP?
Semak secara elegan sama ada jadual MySQL wujud
Apabila menggunakan sambungan PDO PHP, kadangkala anda perlu menyemak sama ada jadual tertentu wujud sebelum beroperasi. Pendekatan tradisional, seperti menggunakan pertanyaan "TUNJUKKAN JADUAL SEPERTI", mungkin menjana pengecualian atau memerlukan penghuraian hasil, yang tidak sesuai.
Pertanyaan boolean yang boleh dipercayai
Kaedah yang lebih dipercayai dan langsung ialah dengan menanya pangkalan data seni bina maklumat. Pangkalan data ini mengandungi metadata tentang pangkalan data dan jadual MySQL. Pertanyaan berikut mengembalikan nilai Boolean yang menunjukkan sama ada jadual yang ditentukan wujud:
$sql = "SELECT 1 FROM information_schema.tables WHERE table_schema = database() AND table_name = ?"; $stmt = $pdo->prepare($sql); $stmt->execute([$tableName]); $exists = (bool)$stmt->fetchColumn();
Pertanyaan ini mengelakkan pengecualian dan secara langsung mengembalikan nilai Boolean yang menunjukkan sama ada jadual itu wujud. Cara lain untuk melaksanakan pertanyaan ini termasuk:
// 使用 PDOStatement::rowCount() $rows = $stmt->rowCount(); $exists = $rows > 0; // 使用 PDOStatement::fetch() $row = $stmt->fetch(); $exists = !empty($row);
Kelebihan
Pendekatan ini mempunyai kelebihan berikut:
Ingat, anda mesti memastikan pangkalan data information_schema didayakan sebelum menggunakan kaedah ini. Jika anda mempunyai soalan tentang pangkalan data ini, lihat dokumentasi MySQL.
Atas ialah kandungan terperinci Bagaimana untuk memeriksa dengan elegan jika Jadual MySQL Wujud Menggunakan PDO PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!