对于MS Access锁定文件(.lacdb),锁定在"确定哪些记录被锁定"中意味着什么



;。laccdb";或";。ldb";文件用于确定哪些记录锁定在共享数据库中以及由谁锁定。

  1. determine which records are locked中的锁定一词是什么意思
  2. 换句话说,记录什么时候被锁定
  3. 例如:假设锁定文件指示记录10被锁定,那么这是否意味着其他人正在读取该特定记录或写入该特定记录,或者两者兼而有之

嗯,这是一个广泛的主题。

我们有许多级别的锁定。让我们从最小到最具体:

  • 独占数据库锁:整个数据库被锁定,在处理窗体、报表和VBA模块等应用程序对象时使用。当用户手动请求独占锁定时也是如此。

    独占锁实际上并不需要.lacdb文件,它们可以使用普通的文件锁。当使用accdb文件的数据库部分(例如ODBC/OLEDB(时,这些文件永远不会设置为afaik。

  • 表写锁:用户正在编辑表的结构,例如通过添加和删除列或更改列类型。

    当用户持有此锁时,无法向或从中读取整个表。

  • 页面写入锁定:记录在页面上,某条记录所在的整个页面都被锁定。这种情况主要发生在用户正在编辑或打算编辑加密数据库上的记录时,因为在向加密数据库上写入记录时,需要重写整个页面。

    根据你正在做的事情,你可能会也可能无法从锁定的页面中阅读,但你肯定不能给它们写信。

  • 记录写入锁定:用户正在编辑或打算编辑特定记录。行为与页面锁定基本相同,但仅适用于单个记录,而不是一页记录。

  • 表读取锁定:防止其他人设置表写入锁定,在读取表时设置(通过打开表、打开绑定报表或查询表(

Access中关于这方面的文档不太好,所以我可能错过了一些。

有很多因素会影响锁,例如窗体上的记录集类型和记录锁属性、记录集上的记录集中类型和LockEdits属性,以及数据库上的数据库属性。

最新更新