Bagaimanakah saya boleh memasukkan data ke dalam beberapa jadual MySQL secara serentak?

Barbara Streisand
Lepaskan: 2024-11-10 00:58:02
asal
704 orang telah melayarinya

How can I insert data into multiple MySQL tables simultaneously?

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;
Salin selepas log masuk

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
Salin selepas log masuk

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!

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