Bagaimana Anda Boleh Semak Kewujudan Baris dalam Pangkalan Data Menggunakan PDO?

Susan Sarandon
Lepaskan: 2024-10-22 10:32:02
asal
917 orang telah melayarinya

How Can You Check the Existence of a Row in a Database Using PDO?

Cara Menyemak Kewujudan Baris dalam Pangkalan Data Menggunakan PDO

Apabila cuba melakukan tindakan bersyarat pada ketiadaan baris tertentu dalam pangkalan data, anda mungkin menghadapi kesukaran menggunakan kaedah tradisional seperti count($row) == 0 atau if($stmt->rowCount() < 0).

Pendekatan yang lebih berkesan adalah dengan memeriksa secara langsung mengembalikan nilai pertanyaan. Coretan kod berikut menggambarkan teknik ini:

<code class="php">$stmt = $conn->prepare('SELECT * FROM table WHERE ID=?');
$stmt->bindParam(1, $_GET['id'], PDO::PARAM_INT);
$stmt->execute();
$row = $stmt->fetch(PDO::FETCH_ASSOC);

if( ! $row)
{
    echo 'nothing found';
}</p>
<p>Kaedah ini akan kembali benar jika baris wujud dalam pangkalan data, dan palsu jika tidak.</p>
<p>Untuk menyemak kewujudan berbilang baris , anda boleh menggunakan kaedah fetchAll():</p>
<pre class="brush:php;toolbar:false"><code class="php">$rows = $stmt->fetchAll(PDO::FETCH_ASSOC); // Same here
if( ! $rows)
{
    echo 'nothing found';
}</code>
Salin selepas log masuk

Dalam situasi di mana anda ingin mengelak daripada mengambil data, anda boleh mengkonfigurasi MySQL untuk mengembalikan nilai boolean dengan menggunakan pertanyaan berikut:

<code class="php">$sql = 'SELECT 1 from table WHERE id = ? LIMIT 1';
$stmt = $conn->prepare($sql);
$stmt->execute([$_GET['id']]);

if($stmt->fetchColumn()) echo 'found';</code>
Salin selepas log masuk

Kaedah ini akan mengembalikan nilai bukan sifar jika baris wujud dalam pangkalan data dan palsu sebaliknya.

Atas ialah kandungan terperinci Bagaimana Anda Boleh Semak Kewujudan Baris dalam Pangkalan Data Menggunakan PDO?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!