Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak wstawić do dwóch tabel jednocześnie w procedurze składowanej?

Musisz zrobić coś takiego:

DECLARE @NewID INT

INSERT INTO Customer(LastName,FirstName,......) VALUES(Value1, Value2, .....)

SELECT @NewID = SCOPE_IDENTITY()

INSERT INTO Employment(CID,Employer,.....) VALUES(@NewID, ValueA,..........)

SCOPE_IDENTITY : Zwraca ostatnią wartość tożsamości wstawioną do kolumny tożsamości w tym samym zakresie. Zakres to moduł:procedura składowana, wyzwalacz, funkcja lub partia. Dlatego dwie instrukcje znajdują się w tym samym zakresie, jeśli znajdują się w tej samej procedurze składowanej, funkcji lub partii.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zatrzaski SQL Server i ich wskazanie problemów z wydajnością

  2. Prosta składnia:wiele ograniczeń w instrukcji Alter Table

  3. Jak używać sortowania (Order By) w instrukcji Select w SQL Server — samouczek SQL Server / TSQL, część 109

  4. Przekazywanie DataTable do procedury składowanej jako argument

  5. jak poznać status aktualnie uruchomionych zadań