Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Trả lại ID được chèn lần cuối mà không cần sử dụng truy vấn thứ hai

Hầu hết mọi người làm điều này theo cách sau:

INSERT dbo.Users(Username)
VALUES('my new name');

SELECT NewID = SCOPE_IDENTITY();

(Hoặc thay vì một truy vấn, hãy gán nó cho một biến.)

Vì vậy, nó không thực sự là hai truy vấn chống lại bảng ...

Tuy nhiên cũng có cách sau:

INSERT dbo.Users(Username)
OUTPUT inserted.ID
VALUES('my new name');

Bạn thực sự sẽ không thể truy xuất thông tin này bằng ExecuteNonQuery , mặc dù.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sắp xếp khóa chính

  2. Giới hạn đối với điều kiện WHERE col IN (...)

  3. Truy vấn SQL cho KIỂM TRA CHI-SQUARE

  4. Kết nối với SQL Server từ Linux thông qua JDBC sử dụng integrationSecurity (xác thực Windows)?

  5. Dấu phẩy trong Dữ liệu CSV