Đây là kịch bản của tôi:
Giả sử tôi có một thủ tục được lưu trữ trong đó tôi cần gọi một thủ tục được lưu trữ khác trên một tập hợp các id cụ thể; Có cách nào để làm việc này không?
tức là thay vì cần làm điều này:
exec p_MyInnerProcedure 4
exec p_MyInnerProcedure 7
exec p_MyInnerProcedure 12
exec p_MyInnerProcedure 22
exec p_MyInnerProcedure 19
Làm điều gì đó như thế này:
*magic where I specify my list contains 4,7,12,22,19*
DECLARE my_cursor CURSOR FAST_FORWARD FOR
*magic select*
OPEN my_cursor
FETCH NEXT FROM my_cursor INTO @MyId
WHILE @@FETCH_STATUS = 0
BEGIN
exec p_MyInnerProcedure @MyId
FETCH NEXT FROM my_cursor INTO @MyId
END
Mục tiêu chính của tôi ở đây chỉ đơn giản là khả năng bảo trì (dễ dàng xóa / thêm id khi doanh nghiệp thay đổi), có thể liệt kê tất cả Id trên một dòng duy nhất ... Hiệu suất không phải là vấn đề lớn