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

Chèn câu lệnh + Kết hợp dữ liệu bảng và biến trong trình kích hoạt

Bạn không thể coi một trình kích hoạt như thể nó xử lý từng hàng một. Nếu việc chèn xảy ra bằng cách sử dụng mệnh đề nhiều giá trị hoặc một lựa chọn lồng nhau, trình kích hoạt sẽ kích hoạt một lần cho toàn bộ hoạt động, có nghĩa là bạn sẽ chỉ xử lý một @UserID tùy ý.

Ở đây tôi giả sử rằng bảng PlaneGPSCoferences của bạn có chính xác 5 hàng và đó là các tọa độ mà mọi người dùng mới nhận được.

CREATE TRIGGER dbo.Matching
ON dbo.UserInfo
FOR INSERT
AS
BEGIN
  SET NOCOUNT ON;
  INSERT dbo.MatchingInformation(GPS1, GPS2, UserID)
    SELECT p.GPS1, p.GPS2, i.UserID
      FROM dbo.PlaneGPSCoordinates AS p
      CROSS JOIN inserted AS i;
END
GO

Nhưng điều này đặt ra câu hỏi, tại sao lại sao chép cùng một tọa độ cho mọi người dùng? Đây có phải là thứ mà họ sẽ cập nhật thường xuyên, bạn chỉ muốn đặt một số giá trị mặc định ở đó để bắt đầu?




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để tìm cổng đang chạy của SQL Server?

  2. Tìm các đối tượng được tham chiếu trong SQL Server:sys.dm_sql_referenced_entities

  3. Danh sách sao lưu kế hoạch bảo trì SQL Server 2008

  4. Không thể CẬP NHẬT kích thước hình ảnh lớn đã được CHÈN trong cơ sở dữ liệu trong asp.net

  5. Batch Mode Bitmaps trong SQL Server