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

CHỌN TỪ thủ tục được lưu trữ?

Tôi hiểu rằng điều này đã hơn 3 năm, nhưng trong trường hợp có ai khác đang tìm kiếm câu trả lời cho câu hỏi này. Tôi đã phải xử lý nền tảng báo cáo này, Izenda, và nhận thấy rằng các thủ tục được lưu trữ được xử lý khác với kết quả đầu ra từ biểu tượng "sql". Đây là những gì sẽ xảy ra khi bạn chọn sp làm nguồn dữ liệu

  1. Một sql động đang được xây dựng
  2. Nó tạo ra hai bảng tạm thời với tất cả các cột mà sp của bạn đang trả về
  3. Bảng tạm thời đầu tiên được điền với kết quả từ quy trình đã lưu trữ của bạn
  4. Bảng tạm thời thứ hai được điền với kết quả cộng với giá trị của thông số đầu vào của bạn.
  5. Một câu lệnh được tạo để truy vấn hai bảng tạm thời này

Xin lưu ý rằng nếu bạn không cung cấp cho nó một tham số, nó sẽ thực thi với giá trị mặc định là chuỗi trống '', điều này rất có thể sẽ không trả về dữ liệu.

Theo ý kiến ​​của tôi, việc xử lý các procs đã lưu trữ là một ý tưởng khủng khiếp, đó là lý do chính đáng tại sao chúng tôi đang có kế hoạch loại bỏ chúng cho một số giải pháp báo cáo khác.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Xóa khỏi CTE với tham gia

  2. Áp dụng hàm tổng hợp MIN cho trường BIT

  3. Sử dụng SqlParameter trong mệnh đề SQL LIKE không hoạt động

  4. JPA GenerationType.AUTO không xem xét cột có tăng tự động

  5. làm thế nào để biết có bao nhiêu hàng sẽ bị ảnh hưởng trước khi chạy một truy vấn trong microsoft sql server 2008