Di chuyển cơ sở dữ liệu Access sang SQL Server

Di chuyển cơ sở dữ liệu Access sang SQL Server

Chúng ta đều có giới hạn và cơ sở dữ liệu Access không có ngoại lệ. Ví dụ, cơ sở dữ liệu Access có giới hạn kích cỡ 2 GB và không thể hỗ trợ quá 255 người dùng đồng thời. Vì vậy, khi đó là thời gian cho cơ sở dữ liệu Access của bạn để đi đến cấp độ tiếp theo, bạn có thể di chuyển sang SQL Server. SQL Server (cho dù tại chỗ hoặc trong Azure Cloud) hỗ trợ lượng lớn dữ liệu, người dùng đồng thời hơn và có công suất lớn hơn cơ sở dữ liệu JET/ACE. Hướng dẫn này cung cấp cho bạn một khởi đầu trơn tru cho cuộc hành trình SQL Server của bạn, giúp bảo lưu các giải pháp kết thúc phía trước Access mà bạn đã tạo và hy vọng sẽ thúc đẩy bạn sử dụng quyền truy nhập cho các giải pháp cơ sở dữ liệu trong tương lai. Trình hướng dẫn upsizing đã bị loại bỏ khỏi Access trong Access 2013, vì vậy, bây giờ bạn có thể sử dụng trợ lý di chuyển Microsoft SQL Server (SSMA). Để di chuyển thành công, hãy làm theo các giai đoạn này.

Các giai đoạn của việc di chuyển cơ sở dữ liệu sang SQL Server

Trước khi bạn bắt đầu

Các phần sau đây cung cấp nền và các thông tin khác để giúp bạn bắt đầu.

Giới thiệu về tách cơ sở dữ liệu

Tất cả đối tượng cơ sở dữ liệu Access có thể nằm trong một tệp cơ sở dữ liệu, hoặc chúng có thể được lưu trữ trong hai tệp cơ sở dữ liệu: cơ sở dữ liệu phía trước và cơ sở dữ liệu phía sau. Tính năng này được gọi là tách cơ sở dữ liệu và được thiết kế để tạo điều kiện cho việc chia sẻ trong môi trường mạng. Tệp cơ sở dữ liệu Back-end chỉ phải chứa các bảng và mối quan hệ. Tệp phía trước chỉ phải chứa tất cả các đối tượng khác, bao gồm biểu mẫu, báo cáo, truy vấn, macro, mô-đun VBA và bảng được liên kết đến cơ sở dữ liệu phía sau. Khi bạn di chuyển cơ sở dữ liệu Access, nó tương tự như một cơ sở dữ liệu tách trong SQL Server đó được đóng vai trò như một phần cuối mới cho dữ liệu hiện được đặt trên máy chủ.

Kết quả là bạn vẫn có thể duy trì cơ sở dữ liệu Access ở phía trước với các bảng được liên kết đến bảng SQL Server. Hiệu quả, bạn có thể lấy được những lợi ích của việc phát triển ứng dụng nhanh rằng cơ sở dữ liệu Access cung cấp, cùng với khả năng mở rộng của SQL Server.

Lợi ích của SQL Server

Bạn vẫn cần một số thuyết phục để di chuyển sang SQL Server? Dưới đây là một số lợi ích bổ sung để suy nghĩ về:

  • Những người dùng đồng thời hơn    SQL Server có thể xử lý nhiều người dùng đồng thời hơn so với quyền truy nhập và thu nhỏ các yêu cầu bộ nhớ khi thêm người dùng thêm vào.

  • Độ sẵn sàng tăng    Với SQL Server, bạn có thể tự động sao lưu, gia tăng hoặc hoàn thành, cơ sở dữ liệu trong khi đang sử dụng. Do vậy, bạn không cần phải yêu cầu người dùng thoát khỏi cơ sở dữ liệu để sao lưu dữ liệu.

  • Hiệu suất cao và khả năng mở rộng    Cơ sở dữ liệu SQL Server thường hoạt động tốt hơn so với cơ sở dữ liệu Access, đặc biệt là với cơ sở dữ liệu lớn, có kích cỡ terabyte. Ngoài ra, SQL Server truy vấn quy trình nhanh hơn và hiệu quả hơn bằng cách xử lý truy vấn song song, sử dụng nhiều chủ đề bản địa trong một quy trình duy nhất để xử lý các yêu cầu của người dùng.

  • Bảo mật được cải thiện    Sử dụng kết nối đáng tin cậy, SQL Server tích hợp với bảo mật hệ thống Windows để cung cấp một truy nhập được tích hợp duy nhất vào mạng và cơ sở dữ liệu, sử dụng tốt nhất của cả hệ thống bảo mật. Điều này giúp bạn dễ dàng quản lý các đề án bảo mật phức tạp hơn. SQL Server là dung lượng lưu trữ lý tưởng cho các thông tin nhạy cảm chẳng hạn như số an sinh xã hội, dữ liệu thẻ tín dụng và địa chỉ được bảo mật.

  • Recoverability ngay lập tức    Nếu hệ điều hành gặp sự cố hoặc mất điện, SQL Server có thể tự động khôi phục cơ sở dữ liệu thành một trạng thái nhất quán trong vài phút và không có sự can thiệp của người quản trị cơ sở dữ liệu.

  • Cách dùng VPN    Truy nhập và mạng riêng ảo (VPN) không được kết nối. Tuy nhiên, với SQL Server, người dùng từ xa có thể sử dụng vẫn sử dụng cơ sở dữ liệu Access Front-end trên màn hình nền và máy chủ SQL Back-end nằm phía sau tường lửa VPN.

  • Máy chủ Azure SQL    Ngoài các lợi ích của SQL Server, hãy cung cấp khả năng mở rộng động không có thời gian chết, tối ưu hóa thông minh, khả năng mở rộng toàn cầu và sẵn sàng, loại bỏ chi phí phần cứng và quản trị giảm.

Chọn tùy chọn Azure SQL Server tốt nhất

Nếu bạn đang di chuyển đến Azure SQL Server, có ba tùy chọn để chọn, mỗi tùy chọn có các lợi ích khác nhau:

  • Cơ sở dữ liệu/đàn hồi đơn    Tùy chọn này có bộ tài nguyên riêng của nó được quản lý thông qua máy chủ cơ sở dữ liệu SQL. Một cơ sở dữ liệu duy nhất giống như một cơ sở dữ liệu được bao gồm trong SQL Server. Bạn cũng có thể thêm một hồ bơi đàn hồi, vốn là một tập hợp cơ sở dữ liệu với một tập tài nguyên được quản lý thông qua máy chủ cơ sở dữ liệu SQL. Tính năng SQL Server phổ biến nhất được sử dụng sẵn dùng với các bản sao lưu sẵn dùng, vá và phục hồi. Nhưng không có đảm bảo thời gian bảo trì và di chuyển chính xác từ SQL Server có thể khó.

  • Ví dụ được quản lý    Tùy chọn này là một bộ sưu tập của hệ thống và cơ sở dữ liệu người dùng với một tập hợp tài nguyên chia sẻ. Ví dụ được quản lý giống như một phiên bản của cơ sở dữ liệu SQL Server có tính tương thích cao với SQL Server tại chỗ. Ví dụ được quản lý có bản sao lưu sẵn có, vá, phục hồi và dễ dàng di chuyển từ SQL Server. Tuy nhiên, có một số lượng nhỏ các tính năng SQL Server không sẵn dùng và không đảm bảo thời gian bảo trì chính xác.

  • Máy Ảo Azure    Tùy chọn này cho phép bạn chạy SQL Server trong một máy ảo trong Azure Cloud. Bạn có toàn quyền kiểm soát công cụ SQL Server và đường dẫn di chuyển dễ dàng. Tuy nhiên, bạn cần quản lý các bản sao lưu, bản vá lỗi và phục hồi của mình.

Để biết thêm thông tin, hãy xem mục chọn đường dẫn di chuyển cơ sở dữ liệu của bạn sang Azurechọn tùy chọn SQL Server bên phải trong Azure.

Các bước đầu tiên

Có một vài vấn đề bạn có thể lên trước có thể giúp sắp xếp quá trình di chuyển trước khi bạn chạy SSMA:

  • Thêm chỉ mục bảng và các phím chính    Đảm bảo mỗi bảng Access có chỉ mục và khóa chính. SQL Server yêu cầu tất cả các bảng có ít nhất một chỉ mục và yêu cầu một bảng được liên kết để có khóa chính nếu bảng có thể được Cập Nhật.

  • Kiểm tra mối quan hệ chính/đối ngoại    Đảm bảo các mối quan hệ này dựa trên các trường với các kiểu dữ liệu nhất quán và kích cỡ. SQL Server không hỗ trợ các cột có các kiểu và kích cỡ dữ liệu khác nhau trong các ràng buộc khóa ngoài.

  • Loại bỏ cột phần đính kèm    SSMA không di chuyển các bảng có chứa cột phần đính kèm.

Trước khi bạn chạy SSMA, hãy thực hiện các bước đầu tiên sau đây.

  1. Đóng cơ sở dữ liệu Access.

  2. Hãy đảm bảo rằng người dùng hiện tại được kết nối với cơ sở dữ liệu cũng đóng cơ sở dữ liệu.

  3. Nếu cơ sở dữ liệu ở định dạng tệp. MDB, sau đó loại bỏ bảo mật mức người dùng.

  4. Sao lưu cơ sở dữ liệu của bạn. Để biết thêm thông tin, hãy xem bảo vệ dữ liệu của bạn với các quy trình sao lưu và khôi phục.

Mẹo    Cân nhắc việc cài đặt Microsoft SQL Server Express Edition trên màn hình máy tính của bạn mà hỗ trợ tối đa 10 GB và là một cách miễn phí và dễ dàng hơn để chạy qua và kiểm tra di chuyển của bạn. Khi bạn kết nối, hãy dùng Localdb làm ví dụ cơ sở dữ liệu.

Mẹo    Nếu có thể, hãy sử dụng phiên bản độc lập của Access. Nếu bạn chỉ có thể sử dụng Office 365, thì hãy dùng công cụ cơ sở dữ liệu Access 2010 để di chuyển cơ sở dữ liệu Access của bạn khi sử dụng SSMA. Để biết thêm thông tin, hãy xem bảng phân phối lại 2010 của Microsoft Access Database Engine.

Chạy SSMA

Microsoft cung cấp trợ lý di chuyển Microsoft SQL Server (ssma) để giúp di chuyển dễ dàng hơn. SSMA chủ yếu là di chuyển bảng và chọn truy vấn không có tham số. Các mô-đun, báo cáo, macro và VBA sẽ không được chuyển đổi. Trình thám hiểm siêu dữ liệu SQL Server Hiển thị các đối tượng cơ sở dữ liệu Access và đối tượng SQL Server cho phép bạn xem lại nội dung hiện tại của cả hai cơ sở dữ liệu. Hai kết nối này được lưu trong tệp di chuyển của bạn, bạn nên quyết định chuyển các đối tượng bổ sung trong tương lai.

Lưu ý    Quá trình di chuyển có thể mất một thời gian tùy thuộc vào kích cỡ đối tượng cơ sở dữ liệu của bạn và số lượng dữ liệu phải được chuyển.

  1. Để di chuyển cơ sở dữ liệu bằng SSMA, trước tiên hãy tải xuống và cài đặt phần mềm bằng cách bấm đúp vào tệp MSI đã tải xuống. Hãy đảm bảo bạn cài đặt phiên bản 32 hoặc 64 bit thích hợp cho máy tính của bạn.

  2. Sau khi cài đặt SSMA, hãy mở nó trên máy tính của bạn, tốt hơn từ máy tính với tệp cơ sở dữ liệu Access.

    Bạn cũng có thể mở nó trên một máy có quyền truy nhập vào cơ sở dữ liệu Access từ mạng trong một thư mục dùng chung.

  3. Làm theo hướng dẫn bắt đầu trong SSMA để cung cấp thông tin cơ bản chẳng hạn như vị trí SQL Server, cơ sở dữ liệu Access và các đối tượng để di chuyển, thông tin kết nối và liệu bạn có muốn tạo bảng đã liên kết hay không.

  4. Nếu bạn đang di chuyển sang SQL Server 2016 trở lên và muốn cập nhật bảng đã nối kết, hãy thêm một cột rowversion bằng cách chọn xem lại công cụ > thiết đặt dự án > chung.

    Trường rowversion sẽ giúp tránh các xung đột bản ghi. Access sử dụng trường rowversion này trong bảng đã nối kết SQL Server để xác định thời điểm bản ghi được cập nhật gần nhất. Ngoài ra, nếu bạn thêm trường rowversion vào một truy vấn, Access sẽ dùng nó để chọn lại hàng sau khi hoạt động Cập Nhật. Thao tác này sẽ cải thiện hiệu quả bằng cách giúp tránh phát hiện các lỗi xung đột và xóa bỏ bản ghi có thể xảy ra khi Access phát hiện kết quả khác nhau từ đệ trình gốc, chẳng hạn như có thể xảy ra với kiểu dữ liệu số điểm nổi và gây nên sửa đổi đỏ. Tuy nhiên, tránh sử dụng trường rowversion trong biểu mẫu, báo cáo hoặc mã VBA. Để biết thêm thông tin, hãy xem mục rowversion.

    Lưu ý    Tránh khó hiểu về rowversion với dấu chấm công. Mặc dù dấu thời gian từ khóa là từ đồng nghĩa cho rowversion trong SQL Server, bạn không thể sử dụng rowversion như một cách để dấu thời gian cho một mục nhập dữ liệu.

  5. Để đặt kiểu dữ liệu chính xác, hãy chọn xem lại công cụ > thiết đặt dự án > nhập ánh xạ. Ví dụ, nếu bạn chỉ lưu trữ văn bản tiếng Anh, bạn có thể dùng varchar chứ không phải là kiểu dữ liệu nvarchar .

Chuyển đổi đối tượng

SSMA chuyển đổi các đối tượng truy nhập vào đối tượng SQL Server nhưng không sao chép các đối tượng ngay lập tức. SSMA cung cấp một danh sách các đối tượng sau đây để di chuyển để bạn có thể quyết định liệu bạn muốn di chuyển chúng đến cơ sở dữ liệu SQL Server:

  • Bảng và cột

  • Chọn truy vấn mà không có tham số.

  • Khóa chính và tiếng nước ngoài

  • Lập chỉ mục và các giá trị mặc định

  • Kiểm tra ràng buộc (cho phép không có độ dài của thuộc tính cột, quy tắc xác thực cột, xác thực bảng)

Khi thực hành tốt nhất, hãy sử dụng báo cáo đánh giá SSMA, trong đó hiển thị kết quả chuyển đổi, bao gồm lỗi, cảnh báo, tin nhắn thông tin, ước tính thời gian để thực hiện di chuyển và sửa lỗi riêng lẻ để thực hiện trước khi bạn di chuyển thể.

Chuyển đổi các đối tượng cơ sở dữ liệu sẽ mất các định nghĩa đối tượng từ siêu dữ liệu Access, chuyển đổi chúng thành cú pháp Transact-SQL (T-SQL), sau đó tải thông tin này vào dự án. Sau đó, bạn có thể xem các đối tượng SQL Server hoặc SQL Azure và các thuộc tính của họ bằng cách sử dụng SQL Server hoặc SQL Azure metadata Explorer.

Để chuyển đổi, tải và di chuyển các đối tượng sang SQL Server, hãy làm theo hướng dẫn này.

Mẹo    Sau khi bạn đã di chuyển thành công cơ sở dữ liệu Access, hãy lưu tệp dự án để sử dụng sau này để bạn có thể di chuyển dữ liệu của mình một lần nữa để thử nghiệm hoặc di chuyển cuối cùng.

Bảng liên kết

Cân nhắc việc cài đặt phiên bản mới nhất của trình điều khiển SQL Server OLE DB và ODBC thay vì sử dụng trình điều khiển SQL Server gốc với Windows. Không chỉ có các trình điều khiển mới hơn, nhưng chúng hỗ trợ các tính năng mới trong Azure SQL rằng trình điều khiển trước đó không. Bạn có thể cài đặt trình điều khiển trên mỗi máy tính nơi sử dụng cơ sở dữ liệu đã chuyển đổi. Để biết thêm thông tin, hãy xem trình điều khiển Microsoft Ole DB 18 cho SQL Servertrình điều khiển ODBC của Microsoft 17 cho SQL Server.

Sau khi bạn di chuyển các bảng Access, bạn có thể liên kết đến các bảng trong SQL Server hiện đang lưu trữ dữ liệu của bạn. Liên kết trực tiếp từ Access cũng cung cấp cho bạn một cách đơn giản hơn để xem dữ liệu của bạn chứ không phải bằng cách sử dụng công cụ quản lý phức tạp hơn SQL Server.  Bạn có thể truy vấn và sửa dữ liệu được nối kết tùy thuộc vào quyền thiết lập bởi người quản trị cơ sở dữ liệu SQL Server của bạn.

Lưu ý    Nếu bạn tạo một ODBC DSN khi bạn liên kết đến cơ sở dữ liệu SQL Server của mình trong quá trình liên kết, hãy tạo cùng một DSN trên tất cả các máy dùng ứng dụng mới hoặc lập trình sử dụng chuỗi kết nối được lưu trữ trong tệp DSN.

Để biết thêm thông tin, hãy xem liên kết đến hoặc nhập dữ liệu từ cơ sở dữ liệu AZURE SQL Servernhập hoặc liên kết đến dữ liệu trong cơ sở dữ liệu SQL Server.

Mẹo   Đừng quên sử dụng trình quản lý bảng được liên kết trong Access để làm mới thuận tiện và liên kết lại bảng. Để biết thêm thông tin, hãy xem quản lý bảng đã liên kết.

Kiểm tra và sửa đổi

Các phần sau đây mô tả các vấn đề chung mà bạn có thể gặp phải trong quá trình di chuyển và cách xử lý chúng.

Truy vấn

Chỉ truy vấn chọn được chuyển đổi; Các truy vấn khác không phải là, bao gồm chọn truy vấn đưa tham số. Một số truy vấn có thể không hoàn toàn chuyển đổi và báo cáo SSMA lỗi truy vấn trong quá trình chuyển đổi. Bạn có thể sửa các đối tượng thủ công không chuyển đổi bằng cách sử dụng cú pháp T-SQL. Lỗi cú pháp cũng có thể yêu cầu chuyển đổi theo cách thủ công các hàm và kiểu dữ liệu đặc biệt cho SQL Server. Để biết thêm thông tin, hãy xem so sánh quyền truy nhập SQL với SQL Server TSQL.

Kiểu dữ liệu

Access và SQL Server có kiểu dữ liệu tương tự, nhưng phải lưu ý về các vấn đề tiềm ẩn sau đây.

Số lớn    Kiểu dữ liệu số lớn lưu trữ giá trị số không phải là tiền tệ, cũng như tương thích với kiểu dữ liệu SQL bigint. Bạn có thể sử dụng kiểu dữ liệu này để tính toán hiệu quả số lớn nhưng nó yêu cầu dùng định dạng tệp cơ sở dữ liệu Access 16 (16.0.7812 hoặc mới hơn). accdb và hoạt động tốt hơn với phiên bản 64-bit của Access. Để biết thêm thông tin, hãy xem mục sử dụng kiểu dữ liệu số lớnchọn giữa phiên bản 64-bit hoặc 32-bit của Office.

Có/Không    Theo mặc định, một cột có/không có cột được chuyển đổi thành một trường bit SQL Server. Để tránh khóa bản ghi, Đảm bảo rằng trường bit được đặt là không cho phép các giá trị NULL. TRONG SSMA, bạn có thể chọn cột bit để đặt thuộc tính Nulls cho phép thành không. Trong TSQL, hãy dùng câu lệnh tạo bảng hoặc thay đổi bảng .

Ngày và Giờ    Có một vài ngày và thời gian cân nhắc:

  • Nếu mức tương thích của cơ sở dữ liệu là 130 (SQL Server 2016) hoặc cao hơn và một bảng được nối kết chứa một hoặc nhiều cột DateTime hoặc datetime2, bảng có thể trả về thư #deleted trong kết quả. Để biết thêm thông tin, hãy xem truy nhập bảng được liên kết đến cơ sở dữ liệu SQL-Server trả về #deleted.

  • Sử dụng kiểu dữ liệu datetime2 có phạm vi ngày tháng lớn hơn DateTime.

  • Khi truy vấn cho các ngày trong SQL Server, hãy đưa vào tài khoản, cũng như ngày đó. Ví dụ:

    • DateOrdered giữa 1/1/19 và 1/31/19 có thể không bao gồm tất cả các đơn hàng.

    • DateOrdered từ 1/1/19 00:00:00 giờ đến 1/31/19 11:59:59 ch có bao gồm tất cả các đơn hàng.

Phần đính kèm   Loại dữ liệu đính kèm lưu trữ tệp trong cơ sở dữ liệu Access. Trong SQL Server, bạn có một vài tùy chọn để cân nhắc. Bạn có thể trích xuất các tệp từ cơ sở dữ liệu Access, rồi cân nhắc việc lưu trữ các liên kết đến các tệp trong cơ sở dữ liệu SQL Server của bạn. Ngoài ra, bạn có thể sử dụng tính năng chia sẻ, chuyển đổi hoặc lưu trữ BLOB từ xa (RBS) để giữ các phần đính kèm được lưu trữ trong cơ sở dữ liệu SQL Server.

Siêu kết nối    Các bảng Access có các cột siêu kết nối mà SQL Server không hỗ trợ. Theo mặc định, các cột này sẽ được chuyển thành các cột nvarchar (Max) trong SQL Server, nhưng bạn có thể tùy chỉnh ánh xạ để chọn kiểu dữ liệu nhỏ hơn. Trong giải pháp Access của bạn, bạn vẫn có thể sử dụng hành vi siêu kết nối trong biểu mẫu và báo cáo nếu bạn đặt thuộc tính siêu kết nối cho điều khiển là true.

Trường đa giá trị    Trường đa giá trị Access được chuyển đổi thành SQL Server làm trường ntext chứa tập hợp các giá trị phân tách. Vì lý do SQL Server không hỗ trợ kiểu dữ liệu có đa giá trị hoạt động theo mối quan hệ nhiều-nhiều nên có thể cần tới việc có thêm hoạt động thiết kế và chuyển đổi.

Để biết thêm thông tin về việc ánh xạ truy nhập và kiểu dữ liệu SQL Server, hãy xem mục so sánh kiểu dữ liệu.

Lưu ý    Các trường đa giá trị không được chuyển đổi và đã ngừng hoạt động trong Access 2010.

Để biết thêm thông tin, hãy xem các kiểu ngày và thời gian, kiểu chuỗi và nhị phânkiểusố.

Visual Basic

Mặc dù VBA không được SQL Server hỗ trợ, hãy lưu ý những vấn đề sau đây có thể xảy ra:

Các hàm VBA trong truy vấn    Truy vấn hỗ trợ các hàm VBA trên dữ liệu trong một cột truy vấn. Tuy nhiên, các truy vấn Access sử dụng các hàm VBA không chạy được trên SQL Server, vì vậy, tất cả dữ liệu được yêu cầu được chuyển đến Microsoft Access để xử lý. Trong hầu hết các trường hợp, các truy vấn này sẽ được chuyển đổi thành các truy vấn vượt qua.

Các hàm do người dùng xác định trong truy vấn    Truy vấn Microsoft Access hỗ trợ việc sử dụng các hàm được xác định trong mô-đun VBA để xử lý dữ liệu được truyền cho họ. Truy vấn có thể được truy vấn độc lập, câu lệnh SQL trong các nguồn bản ghi biểu mẫu/báo cáo, nguồn dữ liệu của hộp tổ hợp và hộp danh sách trên biểu mẫu, báo cáo và trường bảng, đồng thời mặc định hoặc các biểu thức quy tắc xác thực. SQL Server không thể chạy các hàm người dùng được xác định. Bạn có thể cần thiết kế lại thủ công các chức năng này và chuyển đổi chúng thành các thủ tục được lưu trữ trên SQL Server.

Hiệu suất tối ưu hóa

Đến nay, cách quan trọng nhất để tối ưu hóa hiệu suất với máy chủ SQL mới, Back-end của bạn là quyết định thời điểm sử dụng truy vấn cục bộ hoặc từ xa. Khi bạn di chuyển dữ liệu sang SQL Server, bạn cũng sẽ di chuyển từ một máy chủ tệp sang mô hình cơ sở dữ liệu máy chủ khách. Làm theo các hướng dẫn chung sau đây:

  • Chạy các truy vấn nhỏ, chỉ đọc trên máy khách để có quyền truy nhập nhanh nhất.

  • Chạy dài, đọc/ghi truy vấn trên máy chủ để tận dụng quyền lực xử lý lớn hơn.

  • Giảm thiểu lưu lượng mạng với bộ lọc và tập hợp để chỉ chuyển dữ liệu bạn cần.

Tối ưu hóa hiệu suất trong mô hình cơ sở dữ liệu máy chủ khách

Để biết thêm thông tin, hãy xem tạo truy vấn Pass-through.

Sau đây là các hướng dẫn bổ sung, được đề xuất.

Đặt logic trên máy chủ    Ứng dụng của bạn cũng có thể sử dụng các dạng xem, hàm do người dùng xác định, thủ tục được lưu trữ, trường được tính toán và Triggers để tập trung và chia sẻ logic ứng dụng, quy tắc kinh doanh và chính sách, truy vấn phức tạp, xác thực dữ liệu và mã tính toàn vẹn tham khảo trên máy chủ, chứ không phải trên máy khách. Hãy tự hỏi, truy vấn hoặc nhiệm vụ này có thể được thực hiện trên máy chủ tốt hơn và nhanh hơn không? Cuối cùng, hãy kiểm tra từng truy vấn để đảm bảo hiệu suất tối ưu.

Sử dụng các dạng xem trong biểu mẫu và báo cáo    Trong Access, hãy thực hiện các thao tác sau:

  • Đối với biểu mẫu, sử dụng chế độ xem SQL cho một biểu mẫu chỉ đọc và dạng xem được lập chỉ mục SQL cho một biểu mẫu đọc/viết làm nguồn bản ghi.

  • Đối với báo cáo, sử dụng dạng xem SQL làm nguồn bản ghi. Tuy nhiên, hãy tạo một dạng xem riêng cho mỗi báo cáo, để bạn có thể dễ dàng cập nhật một báo cáo cụ thể mà không tác động đến các báo cáo khác.

Thu nhỏ cực tiểu dữ liệu trong một biểu mẫu hoặc báo cáo    Không hiển thị dữ liệu cho đến khi người dùng yêu cầu. Ví dụ, hãy giữ nguyên thuộc tính recordsource, giúp người dùng chọn một bộ lọc trên biểu mẫu của bạn, sau đó đặt thuộc tính recordsource với bộ lọc của bạn. Hoặc sử dụng mệnh đề where của DoCmd. OpenForm và DoCmd. OpenReport để hiển thị (các) bản ghi chính xác cần thiết cho người dùng. Cân nhắc việc tắt tính dẫn hướng bản ghi.

Cẩn thận với truy vấn heterogeneous   Tránh chạy truy vấn kết hợp bảng Access cục bộ và bảng đã nối kết SQL Server, đôi khi được gọi là truy vấn hỗn hợp. Loại truy vấn này vẫn yêu cầu truy nhập để tải xuống tất cả dữ liệu SQL Server vào máy cục bộ, rồi chạy truy vấn, ứng dụng này sẽ không chạy truy vấn trong SQL Server.

Khi nào dùng bảng cục bộ    Cân nhắc việc sử dụng các bảng cục bộ cho dữ liệu hiếm khi thay đổi, chẳng hạn như danh sách bang hoặc tỉnh trong một quốc gia hoặc khu vực. Các bảng tĩnh thường được dùng để lọc và có thể hoạt động tốt hơn trên mặt trước quyền truy nhập.

Để biết thêm thông tin, hãy xem cố vấn điều chỉnh cơ sở dữ liệu, sử dụng bộ phân tích hiệu suất để tối ưu hóa cơ sở dữ liệu Accesstối ưu hóa các ứng dụng Microsoft Office Access được liên kết với SQL Server.

Xem thêm

hướng dẫn di chuyển cơ sở dữ liệu Azure

Blog di chuyển dữ liệu của Microsoft

Microsoft Access đến di chuyển SQL Server, chuyển đổi và upsizing

Cách chia sẻ một cơ sở dữ liệu màn hình máy tính Access

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..​

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.

×