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

Cách tạo bảng tạm trong SQL Server thông qua MS Access

Đây là một đoạn mã VBA mà tôi đã sử dụng để gọi một thủ tục được lưu trữ trong DB2. Kỹ thuật tương tự sẽ hoạt động cho bất kỳ câu lệnh DDL nào. Để thực hiện việc này, hãy tạo một truy vấn chuyển và đặt CREATE TABLE #tblname... của bạn câu lệnh dưới dạng văn bản SQL của nó.

QUAN TRỌNG:Sau đó, mở trang thuộc tính của truy vấn và đặt thuộc tính 'Trả về Bản ghi' thành "Không".

Dim qdf As QueryDef
Set qdf = CurrentDb.QueryDefs("qry_SP_CHANGE_COLUMN")
qdf.Connect = CurrentDb.TableDefs("SCHEMA_tblName").Connect
qdf.SQL = "call SCHEMA.SP_CHANGE_COLUMN(...)"
qdf.Execute dbFailOnError
qdf.Close
Set qdf = Nothing

Lưu ý, bạn có thể sẽ không phải thay đổi văn bản SQL của mình. Bạn chỉ có thể để điều đó trong truy vấn def nếu cấu trúc bảng không bao giờ thay đổi.

Thách thức đối với bạn là bạn phải sử dụng cùng một kết nối cho bất kỳ hoạt động nào đối với bảng tạm thời. Vào phút kết nối bị đóng, bảng tạm thời của bạn sẽ biến mất vì đó là bảng tạm thời cục bộ và nó chỉ hiển thị với một kết nối đó. Bạn có thể tránh điều này bằng cách sử dụng '##', bảng tạm thời chung, nếu bạn có quyền làm điều đó.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Không thể lấy kết quả của thủ tục được lưu trữ trong biến?

  2. Chuyển đổi đối tượng DateTime của SQL Server thành BIGINT (.Net tick)

  3. Sử dụng biến có TOP trong câu lệnh select trong SQL Server mà không làm cho nó động

  4. Cách APPROX_COUNT_DISTINCT () hoạt động trong SQL Server

  5. Mệnh đề WHERE so với ON khi sử dụng JOIN