Ao passar do tempo com o uso dos ORM’s, ficamos mal acostumados e acabamos esquecendo o SQL raiz.
Eles vieram para facilitar e agilizar nossa vida no desenvolvimento de sistemas x banco de dados, mas acabamos com o tempo de nos acostumarmos mal e na hora que precisamos de fazer um INSERT com registros relacionados entre tabelas, não nos lembramos como fazer … kkkk
Essa semana precisei realizar múltiplos INSERT em duas tabelas em que seus registros se relacionam, o ID de um compõe o registro de outro, e precisei fazer um INSERT de 1:N em duas tabelas, sendo que o N eram 70 registros para 1 na tabela principal, logo, no INSERT principal, eu precisava pegar o registro do ID inserido e adicionar nos outros 70 registros da segunda tabela, para relacionar, então foi que resgatei do passado, digo, há mais de 10 anos que não usava, o recurso de criar um registro local, função, etc., do SQL:
SET @lastId = LAST_INSERT_ID();
Depois de realizar o INSERT na primeira tabela, eu adiciono essa alinha em cima para obter o ultimo ID inserido, e armazeno na variável para utilizar depois.
Agora eu pego essa variável e adiciono nos 70 registros da segunda tabela.
Pronto! Simples né.. Fica aqui de registro para não me esquecer mais hahahahaha..
Eu sei, existe algumas formas o INSERT com esse tipo de relacionamento, mas é o que tinha na hora e que atendeu sem ter perdas. Aqui é mais para lembrar desses comandos OLD SCHOOL que usávamos em décadas passadas.