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

mysql memasukkan ke dalam 2 tabel sekaligus yang memiliki kunci utama dan kunci asing

Anda dapat menggunakan STORED PROCEDURE ini sehingga Anda hanya akan menelepon sekali dari tingkat aplikasi. Contoh,

DELIMITER $$
CREATE PROCEDURE InsertBook
(
    IN _Title INT,
    IN _AwardName VARCHAR(35),
    IN _Year INT
)
BEGIN
    INSERT INTO Books (Title)
    VALUES(_Title);

    -- since the ID is set as AUTO_INCREMENT
    -- there are two ways to do how you can get the ID 
    -- from the Books Table and insert it 
    -- on BookAwards

    -- FIRST WAY
    -- by using LAST_INSERT_ID()
    SET @last_ID = LAST_INSERT_ID();

    -- SECOND WAY
    -- by using MAX()
    -- SET @last_ID = (SELECT MAX(ID) FROM Books);


    INSERT INTO BookAwards(ID, AwardName, Year)
    VALUES (@last_ID, _AwardName, _Year);
END $$
DELIMITER ;

Dan pada tingkat aplikasi atau pada sumber apa pun yang Anda inginkan untuk memanggil prosedur ini,

CALL InsertBook('Lost Art', 'Best in Churva', 2013);

Untuk tujuan keamanan, Anda masih dapat membuat parameter prosedur, mis.

CALL InsertBook(?, ?, ?);



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wildcard di Java ReadyStatements

  2. Ambil data dari mysql dan tampilkan dalam bentuk tabel teks ascii di browser

  3. Spring Boot:Jdbc javax.net.ssl.SSLException:menutup masuk sebelum menerima close_notify rekan

  4. MySQL GABUNG Beberapa Tabel Dengan LIMIT Tabel Terakhir Berdasarkan DateTime per hasil

  5. Periksa apakah nama pengguna ada di tabel mysql melalui php?