I work using SQL Server. I have 2 tables, Animal and Cat. When I add a new cat to the database, I want to update both tables. I should add the cat to the Animal table first, so that I can add the animal_Id to the Cat table afterwards.
Is there a way to add the record at two tables at the same time? If there isn’t, what is the best way to do it?
I just want an idea.
If you use a transaction, both inserts will be done, at least logically, “at the same time”.
That means that no other query, done from outside of the transaction, can see the base “between the inserts”. And if there is a failure between both inserts (and no effective commit), the final state will ignore first insert.
In order to get the id of a row just added in your session, use SCOPE_IDENTITY.