Bagaimana untuk Mengemas kini atau Memasukkan Rekod MySQL Menggunakan Pernyataan Bersyarat dalam PHP?

Patricia Arquette
Lepaskan: 2024-11-12 06:13:01
asal
675 orang telah melayarinya

How to Update or Insert MySQL Records Using Conditional Statements in PHP?

PHP dan MySQL: Mengemas kini atau Memasukkan Rekod Menggunakan Pernyataan Bersyarat

Dalam aplikasi PHP anda, anda memerlukan cara yang serba boleh untuk mengemas kini atau memasukkan data ke dalam pangkalan data MySQL anda berdasarkan sama ada syarat tertentu dipenuhi. Ini boleh dicapai menggunakan kemas kini gabungan atau penyata sisip.

Coretan kod berikut menunjukkan pendekatan ini:

public function set_layer_colors($value) {
    global $db;

    $query = "INSERT INTO set_colors (school_art_id, baseimage_id, sub_folder, layer)
        SELECT school_art.id, baseimage.id, baseimage.sub_folder, baseimage.layer
        FROM school_art 
        JOIN baseimage ON baseimage.base_folder = school_art.series_code 
        WHERE baseimage.image_type = 'B' ORDER BY school_art.id 
    ON DUPLICATE KEY UPDATE
        school_art_id=VALUES(school_art_id),
        baseimage_id=VALUES(baseimage_id),
        sub_folder=VALUES(sub_folder),
        layer=VALUES(layer);";

    $result_array = mysql_query($query);

    return $result_array;
}
Salin selepas log masuk

Kod ini menggabungkan penyataan INSERT dan ON DUPLICATE KEY UPDATE. Pernyataan INSERT cuba memasukkan baris baharu ke dalam jadual set_colors, dengan nilai diambil daripada gabungan jadual school_art dan baseimage.

Jika school_art_id yang ditentukan sudah wujud dalam jadual set_colors, KUNCI PENDUPLICATE ON Klausa UPDATE menjadi aktif. Klausa ini mengemas kini baris sedia ada dengan nilai yang disediakan dalam klausa VALUES, pada asasnya menimpa nilai sedia ada. Jika school_art_id tidak wujud, baris baharu akan dimasukkan seperti biasa.

Atas ialah kandungan terperinci Bagaimana untuk Mengemas kini atau Memasukkan Rekod MySQL Menggunakan Pernyataan Bersyarat dalam PHP?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan