Tạo truy vấn chuyển qua

Bạn có thể sử dụng Access làm ứng dụng trước khi kết thúc và sau đó liên kết đến các bảng trong một máy chủ Back-end, chẳng hạn như SQL Server. Theo mặc định, hầu hết các truy vấn chạy cục bộ trong công cụ cơ sở dữ liệu Access ACE. Trong một số trường hợp, Access có thể chạy truy vấn từ xa trên SQL Server, tùy thuộc vào cú pháp SQL và các yếu tố khác. Để biết thêm thông tin, hãy xem "cơ sở dữ liệu JET Engine Phiên bản 3,0: kết nối ODBC" trong phát hiện các giấy tờ phản lực và ODBC trắng.

Mặc dù thường thì bạn muốn chạy một truy vấn rõ ràng trên một máy chủ cơ sở dữ liệu. Bạn thực hiện điều này để giúp cải thiện hiệu suất: máy chủ cơ sở dữ liệu có quyền xử lý lớn hơn một máy tính để bàn và bạn có thể trả về một tập hợp con nhỏ hơn của dữ liệu qua kết nối mạng. Để chạy một truy vấn trên một máy chủ cơ sở dữ liệu, hãy sử dụng truy vấn chuyển qua là tuyên bố Transact SQL (TSQL) kết nối với SQL Server bằng cách dùng chuỗi kết nối ODBC. Ví dụ, bạn có thể vượt qua một câu lệnh SELECT để trả về dữ liệu vào biểu dữ liệu, biểu mẫu, báo cáo hoặc điều khiển danh sách, chạy các truy vấn hành động tương đương (ngôn ngữ thao tác dữ liệu (DML), gọi các thủ tục được lưu trữ và thực hiện các tác vụ quản trị (định nghĩa dữ liệu Báo cáo ngôn ngữ (DDL).

Lưu ý    Kết quả của truy vấn Pass-through là chỉ đọc. Để chỉnh sửa trực tiếp dữ liệu trong biểu dữ liệu hoặc biểu mẫu, hãy tạo bảng đã nối kết với một dạng xem được lập chỉ mục. Để biết thêm thông tin, hãy xem tạo dạng xem được lập chỉ mục.

  1. Kết nối với cơ sở dữ liệu máy chủ.

    Để biết thêm thông tin về cách nối kết đến SQL Server, hãy xem mục nhập hoặc liên kết đến dữ liệu trong cơ sở dữ liệu SQL Serverliên kết đến hoặc nhập dữ liệu từ cơ sở dữ liệu Azure SQL Server.

  2. Chọn tạothiết kế truy vấn>.

  3. Đóng hộp thoại Hiện Bảng.

  4. Chọn thiết kế >truyền đi qua.

    Access ẩn lưới thiết kế truy vấn và hiển thị dạng xem SQL.

  5. Nếu bảng thuộc tính truy vấn không xuất hiện, hãy nhấn F4 để hiển thị nó.

  6. Trên bảng thuộc tính, bấm vào hộp thuộc tính ODBC Connect Str , rồi thực hiện một trong các thao tác sau:

    Để lấy chuỗi kết nối:

    1. Trong ngăn dẫn hướng, bấm chuột phải vào một bảng được nối kết với nguồn dữ liệu mong muốn, rồi chọn trình quản lý bảng được liên kết.

    2. Trong hộp thoại trình quản lý bảng được liên kết , hãy chọn hộp kiểm của nguồn dữ liệu, rồi chọn chỉnh sửa.

    3. Trong hộp thoại sửa nối kết , hãy sao chép văn bản trong hộp chuỗi kết nối .

    1. Chọn xây dựng Nút Bộ dựng .

    2. Làm theo lời nhắc để tạo tệp DSN có chứa thông tin chuỗi kết nối. Để biết các bước chi tiết, hãy xem mục nhập hoặc liên kết đến dữ liệu trong cơ sở dữ liệu SQL Serverliên kết đến hoặc nhập dữ liệu từ cơ sở dữ liệu Azure SQL Server.

    Sau khi bạn tạo kết nối tệp DSN, Chuỗi kết nối ODBC sẽ được lưu trữ trong nội bộ trong cơ sở dữ liệu Access của bạn. Đây là một Mẹo để có được một bản sao của chuỗi đó:

    1. Xác định vị trí tên bảng đã nối kết trong ngăn dẫn hướng bằng kết nối ODBC mà bạn muốn.

    2. Nhấn Ctrl + G. để mở cửa sổ VBA ngay lập tức.

    3. Nhập: mã sau đây:

      ?CurrentDb.TableDefs("<table name>").Connect

      Nhưng thay thế cho tên bảng <> tên bảng đã nối kết từ bước a.

    4. Sao chép chuỗi trả về thuộc tính ODBC Connect Str .

  7. Nhập truy vấn của bạn trong dạng xem SQL.

    Lưu ý   Có sự khác biệt quan trọng giữa Access SQL và SQL Server TSQL, đặc biệt là với cú pháp, tên hàm và đối số của hàm. Để biết thêm thông tin, hãy xem so sánh quyền truy nhập SQL với SQL Server TSQL.

    Mẹo    Xây dựng truy vấn TSQL trong SQL Server Management Studio trước tiên, rồi sao chép và dán SQL vào dạng xem SQL. Điều này đảm bảo truy vấn có cú pháp chính xác. Nếu bạn không có quyền truy nhập thuận tiện cho cơ sở dữ liệu SQL Server, hãy cân nhắc việc cài đặt Microsoft SQL Server Express Edition trên máy tính của bạn mà hỗ trợ tối đa 10 GB và là cách để chạy qua và kiểm tra di chuyển của bạn.

  8. Cân nhắc việc thiết lập các thuộc tính liên quan bổ sung:

    • Trả về bản ghi     Một số câu lệnh SQL trả về bản ghi, chẳng hạn như chọn và một số không, chẳng hạn như Cập Nhật. Nếu truy vấn trả về bản ghi, hãy đặt thuộc tính này thành ; Nếu truy vấn không trả về bản ghi, hãy đặt thuộc tính này thành không.

      Lưu ý    Truy vấn chuyển qua có thể trả về nhiều tập kết quả, nhưng trong một biểu dữ liệu, biểu mẫu, báo cáo hoặc RecordSet biến số, chỉ có tập kết quả đầu tiên được dùng. Để truy xuất nhiều tập kết quả, hãy sử dụng một truy vấn tạo bảng làm ví dụ sau đây:

      SELECT <pass-through query name>.*
      INTO <local table name>
      FROM < pass-through query name >

      Bạn phải dùng dấu hoa thị (*) vì mỗi tập kết quả có thể có các cột khác nhau. Mỗi tập kết quả được lưu trong một bảng và số riêng biệt được nối vào tên bảng cục bộ cho phù hợp. Ví dụ, nếu bộ ba kết quả được trả về, tên bảng sẽ là: <tên bảng cục bộ>, <tên bảng cục bộ>1, <tên bảng cục bộ>2.

    • Đăng nhập tin nhắn    Xác định liệu có trả về thư từ cơ sở dữ liệu SQL trong bảng thông điệp Access hay không. Tên bảng có định dạng, username – NN, trong đó tên người dùng là tên đăng nhập cho người dùng hiện tại và nn là một số bắt đầu từ 00.

    • Thời gian chờ ODBC    Xác định số giây để đợi trước khi một lỗi xảy ra khi truy vấn được chạy. Giá trị mặc định là 60 giây. Có thể có sự chậm trễ do lưu lượng mạng hoặc sử dụng máy chủ cơ sở dữ liệu nặng.

    • Bản ghi tối đa    Xác định số lượng bản ghi tối đa để trả về. Bạn có thể có tài nguyên hệ thống hạn chế hoặc bạn muốn kiểm tra kết quả chỉ với một lượng nhỏ dữ liệu.

  9. Khi bạn nhập xong truy vấn, hãy chọn thiết kế > chạy. Truy vấn của bạn được gửi đến máy chủ cơ sở dữ liệu để xử lý.

Lưu ý:  Trang này được dịch tự động nên có thể chứa các lỗi về ngữ pháp hoặc nội dung không chính xác. Mục đích của chúng tôi là khiến nội dung này trở nên hữu ích với bạn. Cho chúng tôi biết thông tin này có hữu ích hay không? Dưới đây là bài viết bằng tiếng Anh để bạn tham khảo..​

Xem Thêm

Transact-tham chiếu SQL

với Transact-SQL

Phát triển kỹ năng Office của bạn
Khám phá nội dung đào tạo
Sở hữu tính năng mới đầu tiên
Tham gia Người dùng nội bộ Office

Thông tin này có hữu ích không?

Cảm ơn phản hồi của bạn!

Cảm ơn bạn đã phản hồi! Để trợ giúp tốt hơn, có lẽ chúng tôi sẽ kết nối bạn với một trong những nhân viên hỗ trợ Office của chúng tôi.

×