Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Memadam Data Berkaitan Dengan Cekap Merentas Berbilang Jadual Pangkalan Data?
Strategi pemadaman data berkaitan berbilang jadual
Mengurus data dalam persekitaran berbilang jadual, terutamanya apabila memadamkan rekod, boleh menjadi mencabar. Artikel ini meneroka dua kaedah untuk memadamkan baris daripada berbilang jadual apabila baris tertentu dipadamkan daripada salah satu jadual.
Pertanyaan untuk mengekalkan integriti data
Cuba gunakan pernyataan LEFT JOIN untuk menyelesaikan masalah ini:
<code class="language-sql">DELETE FROM messages LEFT JOIN usersmessages USING(messageid) WHERE messageid='1';</code>
Walau bagaimanapun, pertanyaan ini tidak berfungsi seperti yang diharapkan.
Kaedah alternatif
1. Tanggalkan dan padam:
Penyelesaian mudah adalah untuk membahagikan operasi pemadaman kepada dua pernyataan berasingan:
<code class="language-sql">DELETE FROM messages WHERE messageid = '1'; DELETE FROM usersmessages WHERE messageid = '1';</code>
Kaedah ini memastikan kedua-dua jadual dikemas kini dengan betul, tetapi ia melibatkan berbilang pertanyaan.
2. Gunakan INNER JOIN untuk memadam:
Pilihan lain ialah menggunakan INNER JOIN dalam kenyataan PADAM:
<code class="language-sql">DELETE messages, usersmessages FROM messages INNER JOIN usersmessages WHERE messages.messageid = usersmessages.messageid and messages.messageid = '1';</code>
Pertanyaan ini menggunakan INNER JOIN untuk mewujudkan hubungan antara dua jadual dan memadamkan hanya rekod yang sepadan dalam kedua-dua jadual.
Atas ialah kandungan terperinci Bagaimana untuk Memadam Data Berkaitan Dengan Cekap Merentas Berbilang Jadual Pangkalan Data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!