ArcGIS Desktop 中的地理数据库连接
空间数据库连接会在客户端计算机上创建一个包含与 ArcSDE 地理数据库之间的连接信息的文件。通过在空间数据库连接 对话框中提供特定的连接信息,可在目录树中的“数据库连接”结点下创建此连接文件。
如果需要将此连接文件中的数据用作服务(如地理处理和地理编码服务)源,则可能需要将连接文件置于网络上的某个共享位置。有关共享连接文件的详细信息,请参阅主题准备要作为服务发布的资源和有关 ArcSDE 数据的地理处理注意事项。
通过空间数据库连接 对话框提供的部分信息是必需的;其他信息是可选的,具体情况取决于站点要求。例如,可选择将版本和数据库用户名称和密码信息保存或不保存为连接文件的一部分。
数据库信息
在“空间数据库连接”对话框的前三个文本框中指定数据库连接的相关信息。
服务器
在“服务器”文本框中输入您正在连接到的数据库所在的服务器名称。
如果在建立直连,此信息不是必填项,但建议您始终提供此信息。如果未提供服务器名称,它将不会出现在 ArcMap 中内容列表的“源”选项卡内。
服务
在“服务”文本框中输入 ArcSDE 服务的端口号、ArcSDE 服务的名称,或输入特定于与之建立连接的数据库管理系统 (DBMS) 类型的直连字符串。
以下主题介绍了直连语法:建立从 ArcGIS Desktop 到 SQL Server 地理数据库的直连。
如果使用 ArcSDE 服务建立连接,则指定端口号更为简单。但是,如果不使用端口号而使用服务名称,则客户端计算机上的服务文件中必须包含一个具有服务名称及其对应端口号的条目。如果您拥有多个通过 ArcSDE 服务连接的客户端,则与只是在“空间数据库连接”对话框中指定服务的端口号相比,使这些文件在每台客户端计算机上都保持最新状态要花费更多的时间。
数据库
在“数据库”对话框中输入要与之建立连接的数据库的名称。如果要连接到 Oracle 数据库,请将此文本框留空。
登录信息
有两个登录选项可用于创建与空间数据库间的连接:数据库身份验证和操作系统身份验证。
所提供的数据库用户名或用于建立连接的全限定操作系统登录信息不能超过 30 个字符。
数据库身份验证
如果单击“数据库”身份验证以在“空间数据库连接”对话框中启用此功能,则必须分别在“用户名”和“密码”文本框中提供有效的数据库用户名和密码。
如果要创建连接,则无需输入用户名和密码;但是,如果不需要创建连接,则系统会在建立连接后提示您输入用户名和密码。
如果不希望将登录信息保存为连接的一部分,请取消选中“保存用户名和密码”;这样做可帮助保持数据库的安全性。但是,如果执行此操作,则必须在每次连接时提供用户名和密码。
操作系统身份验证
如果要单击“操作系统”身份验证以启用此功能,则无需在连接对话框中输入用户名和密码,因为系统会使用登录操作系统时所用的登录名和密码建立连接。如果操作系统使用的登录信息不能用作地理数据库的登录信息,连接将失败。
如果要使用操作系统身份验证创建一个与存储在 Oracle、DB2、Informix 或 PostgreSQL 中的地理数据库之间的连接,则必须使用与数据库的直连。有关直连的信息,请参阅。
连接详细信息
可在“空间数据库连接”对话框的“连接详细信息”部分指定要与之建立连接的地理数据库的版本。默认情况下,将连接到名为 sde.DEFAULT 的版本。如果要连接到其他版本,请单击“更改”。这将打开“连接详细信息”对话框。可从中选择要与之建立连接的事务版本或历史版本。
要读取可用版本,ArcGIS Desktop 必须能够与地理数据库建立连接。因此,如果所提供的服务器或登录信息不正确,则将无法更改版本。
如果选中“将事务版本名称与连接文件一起保存”框,用户将始终使用此连接文件连接到指定的事务版本。如果未选中此框,则当用户每次使用此连接文件重新连接时,系统会提示用户选择所要连接的版本。请注意,如果已选择要与之连接的历史版本,此复选框会标注“将历史详细信息与连接文件一起保存”。如果未选中此复选框,则当用户使用此连接文件时,将始终连接到指定的历史标记或日期和时间。
在以下几种情况下可能需要保存版本:正在使用 SQL Server,并已在 dbo 方案中创建系统表;想要在 Oracle 中为用户方案地理数据库创建特定的连接文件;或者需要在大多数时间内连接到同一事务或历史版本。
如果经常需要连接到其他事务或历史版本的地理数据库,则应取消选中用于将版本与连接文件一起保存的选项。执行此操作意味着,每次使用连接文件时,系统都会提示您输入缺少的连接属性。
确保连接成功
在您指定空间数据库连接所需的所有信息后,建议您单击“空间数据库连接”对话框底部的“测试连接”。如果连接测试失败,请联系数据库管理员,以确保数据库运行正常且对话框中提供的信息正确无误。虽然您仍可通过单击“确定”来添加此连接,但在问题得以解决之前将无法检索数据。