Xử lý lỗi „3146‟ trong chương trình VB
Số trang: 2
Loại file: pdf
Dung lượng: 0.00 B
Lượt xem: 13
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Xử lý lỗi „3146‟ trong chương trình VB(Post 13/10/2010) Lỗi run-time 3146 (ODBC Call failed) là một thông báo khá “tù mù”, vì vậy nó xuất hiện trong khá nhiều diễn đàn VB. Khi được người sử dụng thông báo lỗi này, lập trình viên không biết lỗi gì đã xảy ra với các thao tác cơ sở dữ liệu để có cách giải quyết.
Nội dung trích xuất từ tài liệu:
Xử lý lỗi „3146‟ trong chương trình VB Xử lý lỗi „3146‟ trong chương trình VB(Post 13/10/2010) Lỗi run-time 3146 (ODBC Call failed) là một thông báo khá “tù mù”, vìvậy nó xuất hiện trong khá nhiều diễn đàn VB. Khi được người sử dụng thông báo lỗi này,lập trình viên không biết lỗi gì đã xảy ra với các thao tác cơ sở dữ liệu để có cách giảiquyết. Gốc của vấn đề là ở chỗ ODBC trả về một chuỗi các lỗi nhưng chương trình chỉhiển thị lỗi đầu tiên là 3146 ODBC Call Failed.Điều đầu tiên mà các lập trình viên thường nghĩ tới là tại sao chương trình không hiển thị đượcthông báo lỗi cụ thể và cần phải sửa chương trình. Mặc dù cách làm rất đơn giản nhưng ít ngườiđể ý (cách làm này đã có từ VB4). Lập trình viên cần duyệt Errors collection để lấy đủ thông tinchi tiết trước khi hiển thị cho người dùng bằng cách thay câu lệnh cụt lủn MsgBox Err.Number& & Err.Description trong phần bẫy lỗi bằng đoạn mã dưới đây:Dim sError As StringDim nI As IntegerDim sTitle As StringsError = Determine whether or not this is a database errorIf DBEngine.Errors.Count > 0 ThenIf DBEngine.Errors(DBEngine.Errors.Count-1)._Number = Err.Number ThensTitle = Database ErrorFor nI = 0 To DBEngine.Errors.Count - 1sError = sError & DBEngine.Errors(nI) & vbCrLfNextsError = sError & vbCrLfEnd IfEnd IfIf sError = ThensTitle = Error add the error stringsError = sError & Err.description & vbCrLfEnd IfMsgBox sError, , sTitleLưu ý: nếu truy cập cơ sở dữ liệu bằng RDO, các bạn cần thay DBEngine.Errors trong đoạn mãtrên bằng rdoEngine.rdoErrors.Nhưng sửa chương trình không phải là cách duy nhất và cũng không phải là cách hay nhất trongmọi trường hợp. Chỉnh sửa chương trình là cần thiết cho những lần sau, nhưng nếu đang gấp haykhông thể gửi ngay chương trình cập nhật cho người dùng, bạn làm thế nào để xác định nguyênnhân lỗi. Ngay cả khi không có chương trình nguồn trong tay, bạn vẫn có thể xác định đượcnguyên nhân thực sự gây lỗi để tìm cách khắc phục.Để làm được điều đó, hãy hướng dẫn người dùng bật tính năng ODBC tracing trên máy kháchtheo các bước sau: Trước tiên gọi Control Panel, mở mục Administrative Tools rồi gọi Data Sources (ODBC), chuyển sang thẻ Tracing và nhấn vào nút Start Tracing Now (xem hình). Hãy nhớ thư mục chứa tệp log để có thể xem chi tiết lỗi (tất nhiên bạn có thể đổi lạ i thư mục đó theo ý mình). Sau cùng, khi đã chạy lại ứng dụng để sinh lỗi 3146 và đọc thông tin chi tiết lỗi từ tệp log, bạn đừng quên quay lại ODBC Data Source Administrator để tắt tính năng tracing.
Nội dung trích xuất từ tài liệu:
Xử lý lỗi „3146‟ trong chương trình VB Xử lý lỗi „3146‟ trong chương trình VB(Post 13/10/2010) Lỗi run-time 3146 (ODBC Call failed) là một thông báo khá “tù mù”, vìvậy nó xuất hiện trong khá nhiều diễn đàn VB. Khi được người sử dụng thông báo lỗi này,lập trình viên không biết lỗi gì đã xảy ra với các thao tác cơ sở dữ liệu để có cách giảiquyết. Gốc của vấn đề là ở chỗ ODBC trả về một chuỗi các lỗi nhưng chương trình chỉhiển thị lỗi đầu tiên là 3146 ODBC Call Failed.Điều đầu tiên mà các lập trình viên thường nghĩ tới là tại sao chương trình không hiển thị đượcthông báo lỗi cụ thể và cần phải sửa chương trình. Mặc dù cách làm rất đơn giản nhưng ít ngườiđể ý (cách làm này đã có từ VB4). Lập trình viên cần duyệt Errors collection để lấy đủ thông tinchi tiết trước khi hiển thị cho người dùng bằng cách thay câu lệnh cụt lủn MsgBox Err.Number& & Err.Description trong phần bẫy lỗi bằng đoạn mã dưới đây:Dim sError As StringDim nI As IntegerDim sTitle As StringsError = Determine whether or not this is a database errorIf DBEngine.Errors.Count > 0 ThenIf DBEngine.Errors(DBEngine.Errors.Count-1)._Number = Err.Number ThensTitle = Database ErrorFor nI = 0 To DBEngine.Errors.Count - 1sError = sError & DBEngine.Errors(nI) & vbCrLfNextsError = sError & vbCrLfEnd IfEnd IfIf sError = ThensTitle = Error add the error stringsError = sError & Err.description & vbCrLfEnd IfMsgBox sError, , sTitleLưu ý: nếu truy cập cơ sở dữ liệu bằng RDO, các bạn cần thay DBEngine.Errors trong đoạn mãtrên bằng rdoEngine.rdoErrors.Nhưng sửa chương trình không phải là cách duy nhất và cũng không phải là cách hay nhất trongmọi trường hợp. Chỉnh sửa chương trình là cần thiết cho những lần sau, nhưng nếu đang gấp haykhông thể gửi ngay chương trình cập nhật cho người dùng, bạn làm thế nào để xác định nguyênnhân lỗi. Ngay cả khi không có chương trình nguồn trong tay, bạn vẫn có thể xác định đượcnguyên nhân thực sự gây lỗi để tìm cách khắc phục.Để làm được điều đó, hãy hướng dẫn người dùng bật tính năng ODBC tracing trên máy kháchtheo các bước sau: Trước tiên gọi Control Panel, mở mục Administrative Tools rồi gọi Data Sources (ODBC), chuyển sang thẻ Tracing và nhấn vào nút Start Tracing Now (xem hình). Hãy nhớ thư mục chứa tệp log để có thể xem chi tiết lỗi (tất nhiên bạn có thể đổi lạ i thư mục đó theo ý mình). Sau cùng, khi đã chạy lại ứng dụng để sinh lỗi 3146 và đọc thông tin chi tiết lỗi từ tệp log, bạn đừng quên quay lại ODBC Data Source Administrator để tắt tính năng tracing.
Tìm kiếm theo từ khóa liên quan:
lỗi 3146 trong VB thủ thuật máy tính mẹo vặt máy tính tin học căn bản thủ thuật tin học tự học tin họcGợi ý tài liệu liên quan:
-
Top 10 mẹo 'đơn giản nhưng hữu ích' trong nhiếp ảnh
11 trang 312 0 0 -
Làm việc với Read Only Domain Controllers
20 trang 301 0 0 -
Cách phân tích thiết kế hệ thống thông tin quan trọng phần 4
13 trang 215 0 0 -
Thủ thuật chặn web đen bằng phần mềm
10 trang 214 0 0 -
Sửa lỗi các chức năng quan trọng của Win với ReEnable 2.0 Portable Edition
5 trang 211 0 0 -
Xử lý tình trạng máy tính khởi động/tắt chậm
4 trang 210 0 0 -
Bài giảng điện tử môn tin học: Quản trị các hệ thống thông tin quản lý xuyên quốc gia
27 trang 210 0 0 -
Giáo trình Bảo trì hệ thống và cài đặt phần mềm
68 trang 206 0 0 -
UltraISO chương trình ghi đĩa, tạo ổ đĩa ảo nhỏ gọn
10 trang 203 0 0 -
Hướng dẫn cách khắc phục lỗi màn hình xanh trong windows
7 trang 202 0 0