Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Lỗi] Không chạy được file *.accdb !
#1
Nhờ các Pro chỉ giáo:
Tôi có 1 file "data.accdb" nhưng lúc thì chạy được, lúc thì không chạy được. Mỗi lần không chạy được thì PC thông báo: "Could not use: "data\data.accdb"; file alrealy in use"
Tôi đã khởi động lại PC ngắt tất cả kết nối với PC, vẫn không chạy được.

Khi vào chỉnh sửa chương trình thì PC thông báo: "The database has been placed in a satate by user Admin on machine "TMT" that presents it from being opened or locked."

Khi chỉnh sửa xong lưu, PC thông báo như hình:
[Hình: ?02x6d7v2ew4l2xe]

Không biết sự cố trên nguyên nhân là gì? Có cách nào khắc phục không ? Rất mong được các Pro chỉ giáo.
Thanks !
Chữ ký của Minh Tiên -----------------------------------------------
Đường tuy ngắn, không đi không đến
Việc tuy nhỏ, không làm không nên.
                                           Tuân Tử
-----------------------------------------------
Reply
Những người đã cảm ơn
#2
Mình không dùng Access 2k10. Nhưng ở Office 2K3 thì thường xảy ra khi file data bị tranh chấp bởi nhiều người dùng.
Cụ thể bạn mở máy máy có tên TMT, vào Access, option=> Advanced. (kiếm cái tương tự trong access 2k10 nhé. Cũng trong các tool thôi)
Ở khung Default Open mode, mặc định đang là Exclusive thì bạn chọn lại là Shared.

- Còn cách xử lý nếu đang bị, bạn ngắt các kết nối! Compact & repair lại là ổn.
Chữ ký của Noname 020
ღღღღღTài sản của Noname (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#3
(28-03-13, 12:26 PM)Noname Đã viết: Mình không dùng Access 2k10. Nhưng ở Office 2K3 thì thường xảy ra khi file data bị tranh chấp bởi nhiều người dùng.
Cụ thể bạn mở máy máy có tên TMT, vào Access, option=> Advanced. (kiếm cái tương tự trong access 2k10 nhé. Cũng trong các tool thôi)
Ở khung Default Open mode, mặc định đang là Exclusive thì bạn chọn lại là Shared.

- Còn cách xử lý nếu đang bị, bạn ngắt các kết nối! Compact & repair lại là ổn.

Cảm ơn bạn đã hướng dẫn. Mình chạy Ms Access 2007. Mình cũng đã làm như bạn hướng dẫn chọn "Share" và cũng ngắt kết nối, Compact & repair đủ kiểu nhưng vẫn không hết tình trạng xung đột. Ko biết còn cách nào gỡ sự cố trên nữa không ?
Rất mong các bạn chỉ giáo giúp !
Chữ ký của Minh Tiên -----------------------------------------------
Đường tuy ngắn, không đi không đến
Việc tuy nhỏ, không làm không nên.
                                           Tuân Tử
-----------------------------------------------
Reply
Những người đã cảm ơn
#4
Vậy bạn phải kiểm tra lại lần nữa tất cả các máy client thuộc tính share thời điểm mở file đang là gì? Có phải đang là share không!
- Một là bạn đang ở trạng thái thiết kế
- Hai là cả ở client.

- ngắt hết kết nối và chạy 1 máy thôi thì có bị không?
Chữ ký của Noname 020
ღღღღღTài sản của Noname (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#5
(28-03-13, 04:25 PM)Noname Đã viết: Vậy bạn phải kiểm tra lại lần nữa tất cả các máy client thuộc tính share thời điểm mở file đang là gì? Có phải đang là share không!
- Một là bạn đang ở trạng thái thiết kế
- Hai là cả ở client.

- ngắt hết kết nối và chạy 1 máy thôi thì có bị không?

Cảm ơn Noname đã hướng dẫn ! Mình T. kế file này và đã chạy trên Lan. Hiện mình đang nâng cấp nên chỉ chạy trên 1 PC Admin TMT của mình.
Mình mới ngắt kết nối, Restart lại PC thì chương trình chạy lại bình thường. Ko biết lỗi này nguyên nhân là gì ?
Mình nói sơ qua quá trình làm việc của mình đến khi sinh ra lỗi trên để các Pro xem nguyên nhân lỗi là gì nhé !
Mình thiết kê chương trình trên Ms Access 2007. Ban đầu chương trình chạy bình thường. Xong:
1. Để thuận lợi cho việc chạy Link qua Lan nên mình đã đổi khai báo địa chỉ của Database của các thủ tục "thực thi" từ : Set db = CurrentDB() thành set DB = Opendatabese(Application.CurrentProject.Path + "\Mydata.accdb");
2. Để tránh sự cố mất hết dữ liệu, mình đã Save as Mydata.accdb thành "Mydata_Ngay-Thang-Nam.accdb" vào thư mục của SkyDrive (Để tự động lưu trữ trực tuyến). Và tiếp tục thao tác thì file vẫn hoạt động bình thường.
3. Sang hôm sau mở PC lên tiếp tục làm việc thì bị thống báo lỗi như đã nêu. Mình đã thử xóa hết tất cả các File đã Save trong SkyDrive, khởi động lại PC, Save file thành file khác (tên khác) vẫn bị lỗi.
4. Hôm nay mình ngắt kết nối trước, khởi động lại PC thì file chạy bình thường. Hiện mình đang kết nối mạng lại và file vẫn hoạt động tốt.

Không biết việc sinh ra lỗi như đã nêu là do nguyên nhân gì ?
Chữ ký của Minh Tiên -----------------------------------------------
Đường tuy ngắn, không đi không đến
Việc tuy nhỏ, không làm không nên.
                                           Tuân Tử
-----------------------------------------------
Reply
Những người đã cảm ơn
#6
Mình mới vừa tạo hàm AutoBackUp file và thực hiện BackUp thành công. Đóng file, rồi mở lên lại thì bị lỗi như trước nữa rồi. Ko biết là gì đây ? Thật buồn quá đi thôi !
Chữ ký của Minh Tiên -----------------------------------------------
Đường tuy ngắn, không đi không đến
Việc tuy nhỏ, không làm không nên.
                                           Tuân Tử
-----------------------------------------------
Reply
Những người đã cảm ơn
#7
Có thể là như thế này(Chưa test nha)
1/ Đặt một biến toàn cục MyDatabase
2/ Tạo một form có nút Command duyệt tìm đến MyData trên máy chủ. Gán MyDatabase bằng đường dẫn vừa nêu
Thử xem nhé
Thân mến
Chữ ký của Xuân Thanh Trăm năm trước thì ta chưa gặp
Trăm năm sau biết gặp được không?
Cuộc đời sắc sắc không không
Thì thôi ta cứ hết lòng vì nhau
ღღღღღTài sản của Xuân Thanh (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#8
(29-03-13, 10:53 AM)Xuân Thanh Đã viết: Có thể là như thế này(Chưa test nha)
1/ Đặt một biến toàn cục MyDatabase
2/ Tạo một form có nút Command duyệt tìm đến MyData trên máy chủ. Gán MyDatabase bằng đường dẫn vừa nêu
Thử xem nhé
Thân mến

Cảm ơn "Xuân Thanh" đã giúp ! Mình đã làm theo cách của bạn và cũng đã gán đường dẫn tìm được cho các "Thủ tục" những vẫn bị lỗi như đã nêu.

Còn điều này nữa: Mình copy file bị lỗi vào một máy khác tên "htpc" sau đó trong các form của chương trình mình chuyển khai báo các thủ tục trong 1 form (form1) về dạng: set db = CurrentDB(); Các form còn lại vẫn để nguyên là: Set db = (Application.CurrentProject.Path + "\Data.accdb") thì:
- Nếu khi mở file lên, Chạy form1 trước, sau đó chạy các form khác thì chương trình chạy OK.
- Nếu mở các Form khác trước thì lại xuất hiện lỗi và chạy lại form1 vẫn không được. Và khi xuất hiện lỗi thì PC thông báo: "The database has been placed in a satate by user Admin on machine "htpc" that presents it from being opened or locked.".
(Thay tên PC từ TMT thành htpc)
Xin các Pro chỉ dẫn thêm ! Thanks
Chữ ký của Minh Tiên -----------------------------------------------
Đường tuy ngắn, không đi không đến
Việc tuy nhỏ, không làm không nên.
                                           Tuân Tử
-----------------------------------------------
Reply
Những người đã cảm ơn
#9
(29-03-13, 09:07 PM)tmtien261 Đã viết: Cảm ơn "Xuân Thanh" đã giúp ! Mình đã làm theo cách của bạn và cũng đã gán đường dẫn tìm được cho các "Thủ tục" những vẫn bị lỗi như đã nêu.

Còn điều này nữa: Mình copy file bị lỗi vào một máy khác tên "htpc" sau đó trong các form của chương trình mình chuyển khai báo các thủ tục trong 1 form (form1) về dạng: set db = CurrentDB(); Các form còn lại vẫn để nguyên là: Set db = (Application.CurrentProject.Path + "\Data.accdb") thì:
- Nếu khi mở file lên, Chạy form1 trước, sau đó chạy các form khác thì chương trình chạy OK.
- Nếu mở các Form khác trước thì lại xuất hiện lỗi và chạy lại form1 vẫn không được. Và khi xuất hiện lỗi thì PC thông báo: "The database has been placed in a satate by user Admin on machine "htpc" that presents it from being opened or locked.".
(Thay tên PC từ TMT thành htpc)
Xin các Pro chỉ dẫn thêm ! Thanks

1/ Bạn làm vẫn chưa đúng trình tự. Không gán trực tiếp vào các thủ tục mà gán qua biến MyDatabase. Vì thế khi mở chương trình thì sẽ mở một form để chọn Database trước và gán vào biến MyDatabase.
Set MyDatabase = DuongDan
Khi đó ở các thủ tục bạn thay cái db = MyDatabase và không phải set lại db nữa
Thủ lại xem nhé
2/ Cao cấp hơn thì dùng DAO hoặc ADO để kết nối
Thân mến
Chữ ký của Xuân Thanh Trăm năm trước thì ta chưa gặp
Trăm năm sau biết gặp được không?
Cuộc đời sắc sắc không không
Thì thôi ta cứ hết lòng vì nhau
ღღღღღTài sản của Xuân Thanh (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#10
(30-03-13, 09:54 AM)Xuân Thanh Đã viết: 1/ Bạn làm vẫn chưa đúng trình tự. Không gán trực tiếp vào các thủ tục mà gán qua biến MyDatabase. Vì thế khi mở chương trình thì sẽ mở một form để chọn Database trước và gán vào biến MyDatabase.
Set MyDatabase = DuongDan
Khi đó ở các thủ tục bạn thay cái db = MyDatabase và không phải set lại db nữa
Thủ lại xem nhé
2/ Cao cấp hơn thì dùng DAO hoặc ADO để kết nối
Thân mến

Mình cũng gán qua biến Mydatabase theo trình tự như sau:
1. Trước khi chạy các Form "thực thi", chương trình mở Form gán đường dẫn (Form1). Sau khi nhất nút Button trình duyệt trên Form1 sẽ tìm đến và chọn file Mydata.accdb; Gán đường dẫn của file này vào Listbox.
2. Gán biến toàn cục Mydatabase vào đường dẫn vừa tìm được trong Listbox bằng lệnh: Mydatabase = Me.Listbox.RowSource
3. Tại "Private Sub" của chương trình khai báo:
...
Dim db as Database
Set db = OpenDatabase(Mydatabase)
...
Kết quả chương trình chạy nhưng vẫn báo bị lỗi như đã nêu. Không biết mình còn thiếu trình tự gì không ? Nhờ Xuân Thanh chỉ giúp !
Chữ ký của Minh Tiên -----------------------------------------------
Đường tuy ngắn, không đi không đến
Việc tuy nhỏ, không làm không nên.
                                           Tuân Tử
-----------------------------------------------
Reply
Những người đã cảm ơn


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  Tạo Menu dạng TreeView bằng Query (không dùng ActiveX) ongke0711 4 249 50 Phút trước
Bài mới nhất: toancvp
  [Help] Dòng chữ chạy trên form báo đến ngày sinh nhật tronghieu9792 1 122 20-10-16, 09:30 AM
Bài mới nhất: lamvankhanh
  Chèn file văn bản word vào access danhxetnghiem 10 438 11-10-16, 03:42 PM
Bài mới nhất: danhxetnghiem
  Không cho phép điều chỉnh kích thước của Form ChiMai 1 127 18-09-16, 01:27 PM
Bài mới nhất: ongke0711
  Lỗi khi chạy event hyuwoo 4 327 16-09-16, 10:39 AM
Bài mới nhất: hyuwoo

Chuyển nhanh:


User(s) browsing this thread: 1 Guest(s)
Diễn Đàn Thơ Văn Thi Ẩm Lâu|Nhà Hàng Sông Thơ