Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Truy vấn chạy nhanh, nhưng chạy chậm trong thủ tục được lưu trữ

Được rồi, chúng tôi đã từng gặp sự cố tương tự như thế này trước đây.

Cách chúng tôi khắc phục điều này, là tạo các tham số cục bộ bên trong SP, sao cho

DECLARE @LOCAL_Contract_ID int, 
        @LOCAL_dt_From smalldatetime, 
        @LOCAL_dt_To smalldatetime, 
        @LOCAL_Last_Run_Date datetime

SELECT  @LOCAL_Contract_ID = @Contract_ID, 
        @LOCAL_dt_From = @dt_From, 
        @LOCAL_dt_To = @dt_To, 
        @LOCAL_Last_Run_Date = @Last_Run_Date

Sau đó, chúng tôi sử dụng các tham số cục bộ bên trong SP thay vì các tham số đã được chuyển vào.

Điều này thường khắc phục sự cố cho Chúng tôi.

Chúng tôi tin rằng điều này là do đánh giá tham số, nhưng không có bất kỳ bằng chứng nào, xin lỗi ... X-)

CHỈNH SỬA:

Hãy xem Các phương pháp tiếp cận khác nhau để sửa lỗi xem thông số máy chủ SQL để biết một số ví dụ sâu sắc, giải thích và sửa chữa.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để xóa các hàng trùng lặp trong SQL Server?

  2. Logic có điều kiện trong tập lệnh PostDeployment.sql sử dụng SQLCMD

  3. SQL động so với thủ tục được lưu trữ

  4. Tại sao 1899-12-30 là ngày 0 trong Access / SQL Server thay vì 12/31?

  5. Số thập phân được truyền không chính xác từ C # sang SQL Server với TableAdapters