Để chuẩn bị cho một dự án di chuyển, chúng tôi đang cố gắng xác định bất kỳ truy vấn nào chọn dữ liệu trên cơ sở dữ liệu.
Điều này có thể có dạng:
SELECT fieldA, fieldB
FROM dbo.TableA a
JOIN DatabaseB.dbo.TableB b ON b.ID = a.ID
hoặc là
DECLARE @resultFromDatabaseB VARCHAR(50)
SELECT @resultFromDatabaseB = b.ID
FROM DatabaseB.dbo.TableB
SELECT fieldA, fieldB
FROM dbo.TableA a
WHERE a.ID = @resultFromDatabaseB
hoặc bất kỳ biến thể nào khác (bao gồm cả INSERTS / CẬP NHẬT / vv ...)
Thật không may, phần lớn các truy vấn không được lưu trữ thủ tục nên tôi không thể phân tích tĩnh văn bản SQL, kế hoạch hiện tại của tôi gọi để ghi lại văn bản truy vấn được lưu trong bộ nhớ cache và thực hiện phân tích tĩnh trên chúng.
Có bất kỳ sự thay thế cho phương pháp này? tức là: sử dụng các sự kiện mở rộng / theo dõi / kiểm toán?