.ldb文件到底派什么用場得?
2024-07-21 02:08:22
供稿:網友
.ldb文件到底派什么用場得?
本文參考地址:http://support.microsoft.com/default.aspx?kbid=208778
摘要:
.ldb文件在多用戶環境下是非常重要得。該文件被 ms jet db engine v4.0 用來確定被共享的數據庫中哪條記錄被鎖定以及被誰鎖定
更多信息:
.ldb 文件是由共享數據庫的使用者自動創建以及刪除得。.ldb 文件建立并存儲計算機名、用戶名以及放置擴展域鎖的。.ldb 文件一般與 .mdb 同名,并且與 .mdb 文件在相同目錄,在 .mdb 文件被打開時建立并鎖定。舉個例子,如果你打開 c:/northwind.mdb 文件后 c:/northwind.ldb 文件會自動被建立并被鎖定。
當最后一個用戶關閉共享數據庫時 .ldb 文件會被自動刪除。但是當用戶沒有正常關閉數據庫或者數據庫已經被標記為損壞,那么 .ldb 文件不會被自動刪除,因為 .ldb 文件中存儲著數據庫損壞時誰正在使用該數據庫。
權限問題:
記得要給予 .ldb 文件所在的文件夾一定的權限。
如果你準備共享一個數據庫,該 .mdb 文件應該被放置在一個用戶擁有讀取、寫入、建立、刪除權限的目錄中。即使你要求每個用戶有不同的文件權限(比如,只讀或者可讀寫),所有能夠共享該數據的用戶對該目錄都應該擁有讀取、寫入、建立的權限,但是你可以分配用戶對某個 .mdb 文件只擁有只讀權限。
注意:如果用獨占方式打開某個數據庫,那么 ms jet db 將不會建立 .ldb 文件,此時用戶對目錄的權限只要求有讀取和寫入兩個權限即可。
.ldb 文件的內容:
ms jet db engine 會為每個以共享方式打開數據庫的使用者在 .ldb 文件中創建一個條目,每個條目的大小是 64 字節。前面 32 字節保存計算機名,后面 32 字節保存用戶名。jet db engine 支持的最大用戶數是 255,因此 .ldb 文件的大小不會超過 16 kb。
當一個用戶關閉一個共享數據庫時,該用戶在 .ldb 文件中的條目不會立即被刪除,可是該條目會在下一個用戶打開這個數據庫時被覆蓋。這也就意味著你不能通過 .ldb 文件來唯一確定誰是某個數據庫的當前使用者。
.ldb 文件的使用方法:
jet db engine 使用 .ldb 文件中的信息來確定誰鎖定了數據,誰正在寫入被其他人鎖定的數據。如果 jet db engine 發現有其他用戶的鎖定沖突,它會讀取 .ldb 文件以獲取計算機名與用戶名誰鎖定了文件或者記錄。
在多數鎖定沖突情況下,你會在存儲記錄時得到一個 “寫入沖突”的提示并且取消你所做的修改。在有些情況下你會得到如下提示:
couldn't lock table <table name>; currently in use by user <security name> on computer <computer name>.
注意:上述關于 .ldb 文件的信息與數據庫文件無關。如果一個 .ldb 文件損壞,數據庫文件仍然能夠工作正常。但是寫入沖突的提示消息中<security name>這個部分你可能會看見一串不知所云的文字。
參考:
在 access 2000 中,你可以用 vba 來輸出某個數據庫的所有登陸用戶的信息。
關于此代碼請參考:
198755 acc2000: checking who logged into database with jet userroster
http://support.microsoft.com/default.aspx?kbid=198755
原文地址:http://support.microsoft.com/default.aspx?kbid=208778
http://www.access911.net 站長收藏國內最大的酷站演示中心!