Memasukkan Data ke dalam Berbilang Jadual MySQL
Memasukkan data ke dalam berbilang jadual secara serentak boleh menjadi keperluan biasa dalam aplikasi pangkalan data. Satu senario sedemikian ialah memasukkan data ke dalam jadual lawatan dan pendaftaran, seperti yang digariskan dalam masalah yang dibentangkan.
Dalam MySQL, pernyataan INSERT direka untuk memasukkan data ke dalam satu jadual. Untuk menangani keperluan yang diberikan, dua pendekatan boleh dipertimbangkan:
1. Pelaksanaan Berbilang Pertanyaan Berbilang:
Kaedah ini melibatkan menulis pertanyaan INSERT berasingan untuk setiap jadual dan melaksanakannya sebagai satu kelompok. Berikut ialah contoh:
BEGIN; INSERT INTO `visits` (visit_id, card_id) VALUES (NULL, 12131141); INSERT INTO `registration` (registration_id, type, timestamp) VALUES (NULL, 'in', UNIX_TIMESTAMP()); COMMIT;
Ini memastikan kedua-dua jadual dikemas kini secara atom dalam urus niaga.
2. Prosedur Tersimpan dengan Sisipan Berbilang:
Pilihan lain ialah mencipta prosedur tersimpan yang merangkumi dua pernyataan INSERT. Ini membenarkan satu panggilan ke prosedur untuk memasukkan data ke dalam kedua-dua jadual:
CREATE PROCEDURE insert_into_multiple_tables (IN card_id INT, IN registration_type ENUM('in', 'out')) BEGIN INSERT INTO `visits` (visit_id, card_id) VALUES (NULL, card_id); INSERT INTO `registration` (registration_id, type, timestamp, visit_id) VALUES (NULL, registration_type, UNIX_TIMESTAMP(), LAST_INSERT_ID()); END
Prosedur ini kemudiannya boleh dipanggil dengan parameter yang dikehendaki untuk melaksanakan operasi sisipan yang diingini.
Kedua-dua pendekatan ini menawarkan penyelesaian kepada masalah memasukkan data ke dalam beberapa jadual MySQL secara serentak. Pilihan antara mereka bergantung pada faktor seperti prestasi, kebolehgunaan semula kod dan keperluan pengendalian transaksi.
Atas ialah kandungan terperinci Bagaimanakah saya boleh memasukkan data ke dalam beberapa jadual MySQL secara serentak?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!