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

Bảng tạm thời cục bộ và toàn cầu - Khi nào sử dụng cái gì?

Không

Nếu bạn muốn lưu các tập kết quả vào bộ nhớ cache dưới sự kiểm soát của riêng bạn, thì bạn không thể sử dụng bảng tạm thời, dưới bất kỳ hình thức nào. Bạn nên sử dụng các bảng người dùng thông thường, được lưu trữ trong tempdb hoặc thậm chí có cơ sở dữ liệu bộ nhớ cache bộ kết quả của riêng bạn.

Các bảng tạm thời, bot #local và ## được chia sẻ có thời gian tồn tại được kiểm soát bởi (các) kết nối. Nếu ứng dụng của bạn ngắt kết nối, bảng tạm thời sẽ bị xóa và điều này không hoạt động tốt với những gì bạn mô tả.

Vấn đề thực sự khó khăn sẽ là điền các tập kết quả được lưu vào bộ nhớ cache này trong các lần chạy concurent mà không trộn lẫn mọi thứ (kết thúc với các tập kết quả chứa các mục trùng lặp từ các lần chạy báo cáo concurent mà cả hai đều được cho là lần chạy 'đầu tiên').

Như một lưu ý bên lề Dịch vụ báo cáo máy chủ SQL đã thực hiện điều này ngay lập tức. Bạn có thể lưu vào bộ nhớ cache và chia sẻ tập dữ liệu, bạn có thể lưu vào bộ nhớ cache và chia sẻ báo cáo, nó đã hoạt động và đã được thử nghiệm cho bạn.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server:hàng thành cột

  2. Lỗi tràn số học trong SQL

  3. CHỌN giá trị DISTINCT và CHÈN VÀO bảng

  4. Phương pháp lưu trữ mật khẩu trong cơ sở dữ liệu ưa thích

  5. Chuỗi con T-SQL - 3 ký tự cuối cùng