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

Truy cập Tra cứu Thông báo Số Lỗi

Bạn đã bao giờ gặp một số lỗi Access, nhưng không có thông báo lỗi giải thích nó là gì chưa?

AccessError() là một cách nhanh chóng để nhận thông báo lỗi liên quan đến số lỗi Access:

Ký tự giữ chỗ trong ống

Ký tự ống dẫn (| ) là một thanh dọc (khả dụng qua [Shift] + [\] {dấu gạch chéo ngược} trên bàn phím tiếng Anh).

Hàm AccessError sử dụng ký tự này làm trình giữ chỗ cho văn bản cụ thể trong một thông báo lỗi.

Ví dụ:Lỗi truy cập 3211 là "... không thể khóa bảng '|' ... "Ký tự ống dẫn trong thông báo chung chung được thay thế bằng chuỗi thực được sử dụng trong dòng mã gây ra thông báo lỗi:

Tài liệu Chính thức

Hàm AccessError thực chất là một phương thức của đối tượng Access.Application. Dưới đây là mô tả về những gì nó hoạt động từ tài liệu chính thức:

Bạn có thể sử dụng AccessError để trả về chuỗi mô tả được liên kết với lỗi Microsoft Access hoặc Đối tượng truy cập dữ liệu (DAO).

Cần lưu ý rằng đây là Microsoft Quyền truy cập cụ thể hàm số. Nói cách khác, bạn sẽ không thể gọi nó từ một ứng dụng Office khác, như Excel hoặc Word. *

(* Điều này không đúng về mặt kỹ thuật. Bạn có thể tạo đối tượng Ứng dụng Access thông qua COM trong bất kỳ môi trường VBA nào và sau đó có thể gọi phương thức AccessError từ đối tượng đó. Tất nhiên, điều đó sẽ chỉ hữu ích nếu bạn muốn kiểm tra Chuỗi thông báo lỗi dành riêng cho quyền truy cập trong ứng dụng Office khác, điều này dường như không thể xảy ra.)

Các trường hợp sử dụng

Thành thật mà nói, tôi không bao giờ nhớ được đã sử dụng phương pháp này bên trong mã ứng dụng của mình.

Đây là tính năng mà tôi hầu như chỉ sử dụng từ Cửa sổ tức thì khi tôi chỉ muốn một cách nhanh chóng để xác định số lỗi Access đại diện cho cái gì.

Điều này sẽ hữu ích nhất nếu bạn gặp phải trình xử lý lỗi có Select Case Err.Number khối và tất cả Case riêng lẻ câu lệnh được sử dụng các số không có chú thích kèm theo, như thế này:

    Select Case Err.Number
    Case 2452   
        'Do something
    Case 2455   
        'Do a different thing
    Case 2467   
        'Do something else
    End Select

Được trang bị phương pháp AccessError, bạn có thể cải thiện mã này bằng cách thêm nhận xét với mô tả ngắn gọn về từng số lỗi:

    Select Case Err.Number
    Case 2452   'invalid reference to the Parent property
        'Do something
    Case 2455   'invalid reference to the property
        'Do a different thing
    Case 2467   'expr refers to object that is closed or doesn't exist
        'Do something else
    End Select

Các vấn đề cần cân nhắc khi tích hợp cơ sở dữ liệu lỗi

Nếu bạn đang sử dụng cơ sở dữ liệu lỗi – như FogBugz – cung cấp tính năng nhóm các lỗi dựa trên mô tả của chúng, bạn có thể muốn sử dụng chung chung thông báo lỗi trong chủ đề của báo cáo lỗi (hoặc bất kỳ trường nào phân nhóm) và nắm bắt thông tin cụ thể thông báo lỗi trong trường chi tiết sự kiện lỗi.

Tôi thảo luận vấn đề này trong ngữ cảnh chức năng ném lỗi tùy chỉnh của tôi tại đây:Ném lỗi trong VBA:Vấn đề tích hợp cơ sở dữ liệu lỗi.

Bài viết được tham khảo

Ném lỗi trong VBAIGiới thiệu một giải pháp thay thế dễ dàng cho Err.Raise. Không còn lâu nữa SetMike Wolfe
  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Xem tin tức mới nhất về Microsoft Access, bao gồm cả Access 2022!

  2. Cách chúng ta sử dụng cơ sở dữ liệu trong cuộc sống hàng ngày của mình

  3. 25 Phím tắt Microsoft Access để tiết kiệm thời gian trong bảng ở dạng xem biểu dữ liệu

  4. Liên kết đến hoặc nhập dữ liệu từ Salesforce

  5. Tham gia cùng tôi vào Thứ Ba, ngày 9 tháng 4 để biết Tin tức mới nhất về Microsoft Access