图层和独立表显示在特定数据源中存储的信息。 如果该数据源被移动或重命名,则与图层或表的连接将断开,并且没有要显示的数据。 要解决此问题,执行以下任一操作来更新数据源:
- 要修复地图中通过损坏的数据源按钮 标识的损坏链接,请单击该按钮,然后浏览至数据源。
- 要更改图层或独立表的数据源,请打开其属性对话框。 在源选项卡中,单击设置数据源并浏览到数据源。
- 要使用 Python 自动更新数据源,请参阅更新和修复数据源。
- 要管理当前工程中的地图引用的所有数据源,请从目录视图中进行访问。 您可以更新一个项目中的路径(例如工程中的单个地图),或者访问工程中的所有路径。 您可以查找并替换路径中的特定字符串。 要更新当前工程中的路径,请遵循所引用的下列步骤。
警告:
从目录视图更新数据源路径时有一些限制。 使用此方法不支持以下图层类型和工作空间:
- 流图层
- 内存工作空间中的图层
- 网络分析图层
- 地图服务图层
- 路径事件图层
- 查询图层 - 您可以在使用工作空间模式 期间更改查询图层的数据源。 如果从项目模式 对其进行更新,则查询图层的源将被替换为标准要素类。
更新工程项目的数据源
按照以下步骤从目录视图同时更新当前工程中所有图层和独立表的数据源:
- 切换到目录视图。 要打开目录视图,在视图选项卡的窗口组中,单击目录视图 。
- 在功能区的目录选项卡的更新组中,单击数据源 以打开目录视图的更新数据源模式。 或者,右键单击地图视图的内容窗格或目录窗格中的地图名称,然后单击更新数据源以在此模式下打开目录视图。随即列出当前工程中引用的所有图层和独立表及其数据源的路径。 要过滤此列表以仅显示一张地图的内容,在目录视图的内容窗格中选择该地图。
- 选择是查看工程项目的数据源路径,还是查看工程引用的所有唯一工作空间的列表。 在功能区上数据源选项卡的视图组中,从以下项目中进行选择:
项目 查看工程项目的数据源路径。
工作空间 查看工程引用的所有唯一工作空间列表。
- 在新建路径列中,为所列出的任何项目键入或粘贴一个新的文件路径。 右键点击当前路径列中的路径,然后单击复制,或单击浏览按钮 浏览到项目的新路径。
将光标悬停在表中的路径上查看项目的数据类型、工作空间类型和工作空间路径。 如果是企业级地理数据库项目,还包括所有服务器信息。
- 选择是否在应用更改之前验证目标源,这些更改将在当前应用程序会话中持续存在。 保存该工程以永久应用它们。 在数据源选项卡的管理更改组中,执行以下操作之一:
- 单击验证并应用 先验证更改,然后进行应用。
- 单击应用 应用更改,而不进行任何验证。
- 在数据源选项卡中,单击关闭 以关闭目录视图的更新数据源模式。
查找并替换路径的一部分
如果数据源的文件夹位置已重命名或重构,则可以在当前工程中查找并替换部分数据源路径,以修复连接。 例如,如果已将名为 MonthlyData 的文件夹重命名为 AnnualData,则可在所有数据源路径中找到第一个字符串的所有实例,并将其替换为第二个字符串。
要查找并替换部分数据源路径,执行下列步骤:
- 切换到目录视图。 要打开目录视图,在视图选项卡的窗口组中,单击目录视图 。
- 在目录选项卡的更新组中,单击数据源 以打开目录视图的更新数据源模式。
随即列出工程中的所有图层和独立表及其数据源的路径。
- 在数据源选项卡的工具组中,单击查找并替换 。
- 在查找文本框中输入字符串。 或者,选择项目以将替换限制为仅使用那些项目。 如果未选择任何项目,将替换所有项目。
- 在替换文本框中输入替换字符串,单击替换按钮 ,一次替换一个项目的字符串;或单击全部替换按钮 ,同时替换所有实例。
- 选择是否在应用更改之前验证目标源,这些更改将在当前应用程序会话中持续存在。 保存该工程以永久应用更改。 在数据源选项卡的管理更改组中,执行以下操作之一:
- 单击验证并应用 先验证更改,然后进行应用。
- 单击应用 应用更改,而不进行任何验证。
- 单击关闭查找和替换按钮 关闭查找和替换控件。
- 在数据源选项卡中,单击关闭 以关闭目录视图的更新数据源模式。
验证更改
更新数据源时,可按原样应用更改,或可在应用更改之前验证目标源。 如果关闭数据源面板而不应用更改,则将显示一条警告,提示您进行应用。 在这种情况下,不会进行验证。
下面是您可能要在不进行验证的情况下应用更改的情景示例:当前位于过渡文件夹位置并准备将数据移至尚不存在的最终文件夹位置。 这些更改将在当前应用程序会话中持续存在。 保存该工程以永久应用更改。
对数据源进行更改时,项目旁会显示一个绿色竖线,表示已进行更改但尚未应用。
要在不验证目标源的情况下应用更改,请在数据源选项卡的管理更改组中,单击应用 。
要先验证目标源再应用更改,请单击验证并应用 。 验证成功后,指示器将随之移除。
如果未找到和验证数据源,则项目旁会显示一个红色指示器,并且面板顶部会出现一个通栏,表示存在无效项目。 在某些情况下,由于无法成功匹配图层或表的字段,因此可能会将数据源视为无效。