SQL Server 2008 R2SQL Server (TSQL) - Có thể cho các câu lệnh EXEC song song không?
Đây là một ví dụ đơn giản:
EXECUTE sp_executesql N'PRINT ''1st '' + convert(varchar, getdate(), 126) WAITFOR DELAY ''000:00:10'''
EXECUTE sp_executesql N'PRINT ''2nd '' + convert(varchar, getdate(), 126)'
Bản tuyên bố đầu tiên sẽ in ngày và làm chậm 10 giây trước khi tiếp tục. Câu lệnh thứ hai sẽ in ngay lập tức.
Cách T-SQL hoạt động, câu lệnh thứ 2 sẽ không được đánh giá cho đến khi lần hoàn thành đầu tiên. Nếu tôi sao chép và dán nó vào một cửa sổ truy vấn mới, nó sẽ thực thi ngay lập tức.
Vấn đề là tôi có những thứ khác, phức tạp hơn đang xảy ra, với các biến cần được chuyển cho cả hai thủ tục.
Những gì tôi đang cố gắng làm là:
- Nhận một kỷ lục
- Khóa nó cho một khoảng thời gian
- trong khi nó đang bị khóa, thực hiện một số báo cáo khác chống lại hồ sơ này và bảng riêng của mình
Có thể có cách để tự động tạo một vài công việc?
Dù sao, tôi đang tìm một cách đơn giản để thực hiện việc này mà không cần phải viết câu lệnh PRINT theo cách thủ công và sao chép/dán sang phiên khác.
Có cách nào để EXEC mà không cần chờ/song song không?
Kỹ thuật công việc động có thể hoạt động tốt để thực thi SQL không đồng bộ. –