Tôi muốn hỏi bạn, ý kiến của bạn khi nói đến việc thực hiện một hình thức tìm kiếm được lọc. Hãy tưởng tượng trường hợp sau:
- 1 bàn lớn có nhiều cột
- Điều quan trọng có thể nói là Máy chủ SQL này
Bạn cần triển khai một biểu mẫu để tìm kiếm dữ liệu trong bảng này và trong biểu mẫu này, bạn sẽ có một số hộp kiểm cho phép bạn chi phí tìm kiếm này.
Bây giờ câu hỏi của tôi ở đây là một trong những điều sau đây nên là cách tốt nhất để thực hiện tìm kiếm?
Tạo một thủ tục được lưu trữ với một truy vấn bên trong. Quy trình được lưu trữ này sẽ kiểm tra xem các tham số có được cung cấp bởi ứng dụng hay không và trong trường hợp chúng không được cung cấp ký tự đại diện sẽ được đưa vào truy vấn.
Tạo một truy vấn động, được xây dựng phù hợp với những gì được đưa ra bởi ứng dụng.
Tôi hỏi điều này bởi vì tôi biết rằng SQL Server tạo một kế hoạch thực hiện khi thủ tục được lưu trữ được tạo ra, để tối ưu hóa hiệu suất của nó, tuy nhiên bằng cách tạo một truy vấn động bên trong thủ tục được lưu trữ, liệu chúng ta có hy sinh tối ưu hóa có được bởi kế hoạch thực hiện không?
Xin vui lòng cho tôi biết những gì sẽ là cách tiếp cận tốt nhất trong ý kiến của bạn.