文件地理数据库和锁定

如果您是使用文件地理数据库中某数据集的唯一用户并且只通过一个进程访问此数据集,则可以自由编辑或修改其属性。可以删除、压缩或解压缩数据集。

然而,如果另一进程已经在访问此数据,无论此进程是在您的计算机还是在另一用户的计算机上,ArcGIS 都将阻止您执行任何上述操作,直到另一进程终止为止。例如,如果您在 ArcMap 中显示了一个要素类,同时试图从 Catalog 目录树中将其删除,则会显示以下消息:

删除所选对象失败。无法获取架构锁,因为已存在现有锁。

如果随后关闭 ArcMap 并重试,即可删除此要素类,只要没有任何其他进程正在访问此数据。

当进程访问某数据集时,它会锁定此数据集,以阻止其他进程对其进行修改。访问某个数据集时还会锁定其他相关数据集,具体说明如下:

为跟踪锁定的数据集,ArcGIS 会在文件地理数据库文件夹中放置 *.lock 文件。当进程终止时,与其关联的 .lock 文件会自动删除。但是在某些情况下,例如当进程过早结束时,.lock 文件可能会留在地理数据库文件夹中。当新锁定发生时,ArcGIS 最终会在之后的会话中移除这些 .lock 文件。每当运行“紧缩”地理处理工具或在 Catalog 目录树中复制和粘贴数据时,也会移除这些文件。同时,这些 .lock 文件将不再继续锁定数据。

锁定对于文件和进程管理至关重要。但是,有时锁定也会成为羁绊。如果您受到阻止,无法对某个数据集及其属性进行编辑、删除、压缩或解压缩,那么是因为发生了以下情况之一:

注注:

与使用其他类型的文件一样,最好定期备份文件地理数据库,以防出现任何问题。

9/15/2013