Tôi đã sử dụng cơ sở dữ liệu SQLite và chạy câu lệnh EXPLAIN trước khi thực hiện truy vấn thực tế để xác minh xem có bất kỳ nỗ lực nào để viết trên cơ sở dữ liệu hay không.tương đương với EXPLAIN dạng SQLite trong SQL Server là gì?
Bây giờ, chúng tôi đã di chuyển sang SQL Server và tôi cần phải biết nếu truy vấn cố gắng viết trên cơ sở dữ liệu hoặc chỉ là một câu lệnh SELECT đơn giản. Tôi về cơ bản cố gắng tránh bất kỳ tuyên bố độc hại nào.
Bất kỳ lý do nào khiến bạn không chỉ chạy truy vấn với vai trò người dùng/vai trò/ứng dụng không có bất kỳ quyền DML/DDL nào? –
Thật vậy; như Damien nói, với SQL Server con đường để đi là chỉ đơn giản là tạo ra một người dùng mà không thể ghi vào cơ sở dữ liệu, và sử dụng đó. Cố gắng làm những điều thông minh với việc phân tích các kế hoạch truy vấn là cực kỳ phức tạp và dễ bị vấn đề khi so sánh. –