Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

mySQL - Masukkan ke dalam tiga tabel

Anda pasti harus melakukan tiga sisipan dalam sebuah transaksi. Saya mungkin akan menulis prosedur tersimpan untuk menangani sisipan.

EDIT:

Berikut adalah contoh prosedur tersimpan dengan transaksi. Perhatikan penggunaan LAST_INSERT_ID() untuk mendapatkan ID dari catatan yang dimasukkan sebelumnya. Ini hanya dua tabel, tetapi Anda harus dapat memperluasnya menjadi tiga tabel.

DELIMITER //
CREATE PROCEDURE new_engineer_with_task(
  first CHAR(35), last CHAR(35), email CHAR(255), tool_id INT)
BEGIN
START TRANSACTION;
   INSERT INTO engineers (firstname, lastname, email) 
     VALUES(first, last, email);

   INSERT INTO tasks (engineer_id, tool_id) 
     VALUES(LAST_INSERT_ID(), tool_id);
COMMIT;
END//
DELIMITER ;

Dan Anda menyebutnya seperti ini:

CALL new_engineer_with_task('Jerry', 'Fernholz', '[email protected]', 1);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Struktur Folder untuk menyimpan jutaan gambar?

  2. MySQL:Memilih beberapa bidang menjadi beberapa variabel dalam prosedur tersimpan

  3. Urutan MySQL berdasarkan nilai ID tertentu

  4. Bagaimana cara mendapatkan ID Variasi Woocommerce?

  5. PHP - Menggunakan PDO dengan array klausa IN