创建数据库连接 (数据管理)

摘要

创建一个 ArcGIS 用来连接到数据库或企业级地理数据库的文件。

使用情况

  • 在工具对话框中输入有效的连接信息并建立连接后,该工具将连接到数据库,以确定其是否包含地理数据库方案。

    • 对于数据库,工具对话框地理数据库连接属性部分中的所有参数均将被忽略。
    • 对于地理数据库,该工具会自动填充地理数据库连接属性部分。 方案参数设置有 sde 方案(仅适用于 Oracle 用户方案地理数据库)、地理数据库的默认版本类型值和默认版本。
  • 不再支持从 ArcGIS 连接到 AltibaseNetezza

参数

标注说明数据类型
连接文件位置

存储数据库连接文件 (.sde) 的文件夹路径。

Folder
连接文件名称

数据库连接文件的名称。 输出文件的扩展名将为 .sde

String
数据库平台

指定要建立连接的数据库管理系统平台。 有效选项如下:

  • DAMENG连接到 Dameng
  • Db2连接至 Linux、UNIX 或 Windows 上的 IBM Db2
  • Oracle连接到 OracleAmazon Relational Database Service (RDS) for OracleAutonomous Transaction Processing
  • PostgreSQL连接到 PostgreSQLAmazon Aurora (PostgreSQL-compatible edition)Amazon Relational Database Service (RDS) for PostgreSQLMicrosoft Azure Database for PostgreSQLGoogle Cloud SQL for PostgreSQL
  • Teradata连接到 Teradata Vantage
  • SAP HANA连接到 SAP HANASAP HANA Cloud
  • SQL Server连接到 Microsoft SQL Server, Microsoft Azure SQL DatabaseMicrosoft Azure SQL Managed InstanceAmazon Relational Database Service (RDS) for SQL ServerGoogle Cloud SQL for SQL Server
String
实例

要连接的数据库服务器或实例。

数据库平台下拉列表中选择的值表示将连接的数据库的类型。 根据所选择的连接类型,可为实例参数提供不同的信息。

有关为各个数据库平台提供的内容的详细信息,请参阅下文。

  • Dameng - 安装 Dameng 数据库的服务器的名称
  • Db2 - 编入目录的 Db2 数据库的名称
  • Oracle - TNS 名称或用于连接 Oracle 数据库或数据库服务的 Oracle Easy Connection 字符串
  • PostgreSQL - 安装 PostgreSQL 的服务器名称或 PostgreSQL 数据库服务实例的名称
  • SAP HANA - SAP HANA 数据库或数据库服务的开放式数据库连通性 (ODBC) 数据源名称
  • SQL Server - SQL Server 数据库实例的名称或数据库服务实例的名称。
  • Teradata - Teradata 数据库的 ODBC 数据源名称。
String
数据库身份验证
(可选)

指定要使用的身份验证类型。

  • 数据库身份验证将使用数据库身份验证。 将使用内部数据库用户名和密码连接到数据库。 创建连接无需输入用户名和密码;但是,如果不输入用户名和密码,系统将在连接建立好之后提示您输入用户名和密码。
    注:

    如果 ArcGIS 服务可通过您所创建的连接文件来对数据库或地理数据库进行访问,或者您想使用目录搜索来查找通过此连接文件访问的数据,您都必须将用户名和密码包括在内。

  • 操作系统身份验证将使用操作系统身份验证。 不必输入用户名和密码。 将用登录操作系统时所使用的用户名和密码建立连接。 如果操作系统使用的登录信息不能用作地理数据库的登录信息,连接将失败。
Boolean
用户名
(可选)

将用于数据库身份验证的数据库用户名。

String
密码
(可选)

将用于数据库身份验证的数据库用户密码。

Encrypted String
保存用户名和密码
(可选)

指定是否将保存用户名和密码。

  • 选中 - 用户名和密码将保存在连接文件中。 这是默认设置。 如果 ArcGIS 服务可通过您所创建的连接文件来对数据库或地理数据库进行访问,或者您想使用目录搜索来查找通过此连接文件访问的数据,您都必须保存用户名和密码。
  • 未选中 - 用户名和密码将不会保存在该连接文件中。 每次试图使用文件进行连接时,系统都将提示您输入用户名和密码。
Boolean
数据库
(可选)

要建立连接的数据库名称。 此参数仅适用于 PostgreSQLSQL Server 平台。

String
方案(仅 Oracle 用户方案地理数据库)
(可选)

将与之建立连接的用户方案地理数据库。 工具将决定是否连接到包含用户方案地理数据库的 Oracle 数据库。 如果 Oracle 数据库包含用户方案,此选项将激活;否则,将保持非活动状态。 此参数的默认选项为使用 sde 方案理数据库。

String
版本类型
(可选)

指定要建立连接的版本类型。 此参数仅在连接到地理数据库时适用。

注:

如果选择历史并提供了名称,将使用默认的事务版本。 如果选择时间点并且未在日期和时间参数中提供日期,将使用默认的事务版本。

  • 事务连接到事务版本。 如果选择事务,则将使用事务版本的列表填充将使用以下版本参数,而日期和时间参数将禁用。 这是默认设置。
  • 历史连接到历史标记。 如果选择历史,则将使用历史标记的列表填充将使用以下版本参数,而日期和时间参数将禁用。
  • 时间点连接到特定时间点。 如果选择时间点,则将使用以下版本参数将禁用,而日期和时间参数将变为活动状态。
  • 分支连接到默认分支版本。
String
将使用以下版本
(可选)

要与之建立连接的地理数据库事务版本或历史标记。 默认选项将使用默认事务版本。

如果选择分支版本类型,则会始终连接到默认分支版本。

String
日期和时间
(可选)

此值表示将用于连接到数据库的日期和时间。 此选项用于启用存档的数据。 利用时间选取器选择相应的日期。

如果手动输入日期,可以使用以下格式:

  • 6/9/2011 4:20:15 PM
  • 6/9/2011 16:20:15
  • 6/9/2011
  • 4:20:15 PM
  • 16:20:15

注:

  • 如果所输入的时间无日期,则将使用默认日期 1899 年 12 月 30 日。
  • 如果所输入的日期无时间,则将使用默认时间 12:00:00 AM。

Date

派生输出

标注说明数据类型
输出工作空间

输出数据库连接文件 (.sde)。

workspace

arcpy.management.CreateDatabaseConnection(out_folder_path, out_name, database_platform, instance, {account_authentication}, {username}, {password}, {save_user_pass}, {database}, {schema}, {version_type}, {version}, {date})
名称说明数据类型
out_folder_path

存储数据库连接文件 (.sde) 的文件夹路径。

Folder
out_name

数据库连接文件的名称。 输出文件的扩展名将为 .sde

String
database_platform

指定要建立连接的数据库管理系统平台。 有效选项如下:

  • DAMENG连接到 Dameng
  • DB2连接至 Linux、UNIX 或 Windows 上的 IBM Db2
  • ORACLE连接到 OracleAmazon Relational Database Service (RDS) for OracleAutonomous Transaction Processing
  • POSTGRESQL连接到 PostgreSQLAmazon Aurora (PostgreSQL-compatible edition)Amazon Relational Database Service (RDS) for PostgreSQLMicrosoft Azure Database for PostgreSQLGoogle Cloud SQL for PostgreSQL
  • SAP HANA连接到 SAP HANASAP HANA Cloud
  • SQL_SERVER连接到 Microsoft SQL Server, Microsoft Azure SQL DatabaseMicrosoft Azure SQL Managed InstanceAmazon Relational Database Service (RDS) for SQL ServerGoogle Cloud SQL for SQL Server
  • TERADATA连接到 Teradata Vantage
String
instance

要连接的数据库服务器或实例。

所指定的 database_platform 参数值表示将连接的数据库类型。 根据所指定的数据库平台,可为 instance 参数提供不同的信息。

有关为各个数据库平台提供的内容的详细信息,请参阅下文。

  • Dameng - 安装 Dameng 数据库的服务器的名称
  • Db2 - 编入目录的 Db2 数据库的名称
  • Oracle - TNS 名称或用于连接 Oracle 数据库或数据库服务的 Oracle Easy Connection 字符串
  • PostgreSQL - 安装 PostgreSQL 的服务器名称或 PostgreSQL 数据库服务实例的名称
  • SAP HANA - SAP HANA 数据库或数据库服务的开放式数据库连通性 (ODBC) 数据源名称
  • SQL Server - SQL Server 数据库实例的名称或数据库服务实例的名称。
  • Teradata - Teradata 数据库的 ODBC 数据源名称。
String
account_authentication
(可选)

指定要使用的身份验证类型。

  • DATABASE_AUTH将使用数据库身份验证。 将使用内部数据库用户名和密码连接到数据库。 创建连接无需输入用户名和密码;但是,如果不输入用户名和密码,系统将在连接建立好之后提示您输入用户名和密码。
    注:

    如果 ArcGIS 服务可通过您所创建的连接文件来对数据库或地理数据库进行访问,或者您想使用目录搜索来查找通过此连接文件访问的数据,您都必须将用户名和密码包括在内。

  • OPERATING_SYSTEM_AUTH将使用操作系统身份验证。 不必输入用户名和密码。 将用登录操作系统时所使用的用户名和密码建立连接。 如果操作系统使用的登录信息不能用作地理数据库的登录信息,连接将失败。
Boolean
username
(可选)

将用于数据库身份验证的数据库用户名。

String
password
(可选)

将用于数据库身份验证的数据库用户密码。

Encrypted String
save_user_pass
(可选)

指定是否将保存用户名和密码。

  • SAVE_USERNAME用户名和密码将保存在连接文件中。 这是默认设置。 如果 ArcGIS 服务可通过您所创建的连接文件来对数据库或地理数据库进行访问,或者您想使用目录搜索来查找通过此连接文件访问的数据,您都必须保存用户名和密码。
  • DO_NOT_SAVE_USERNAME用户名和密码不会保存在连接文件中。 每次试图使用文件进行连接时,系统都将提示您输入用户名和密码。
Boolean
database
(可选)

要建立连接的数据库名称。 此参数仅适用于 PostgreSQLSQL Server 平台。

String
schema
(可选)

将与之建立连接的用户方案地理数据库。 此选项仅适用于至少包含一个用户方案地理数据库的 Oracle 数据库。 此参数的默认值为使用 sde 方案地理数据库。

String
version_type
(可选)

指定要建立连接的版本类型。

  • TRANSACTIONAL连接到传统事务版本。
    注:

    此选项不适用于 SAP HANA 中的地理数据库。

  • HISTORICAL连接到历史标记。
  • POINT_IN_TIME连接到特定时间点。 如果使用 POINT_IN_TIME,则将忽略 version 参数。
  • BRANCH连接到默认分支版本。

注:

如果使用 TRANSACTIONALHISTORICAL,则将忽略 date 参数。 如果使用 HISTORICAL 并且未在 version 参数中提供名称,将使用默认的事务版本。 如果选择 POINT_IN_TIME 并且未在 date 参数中提供日期,将使用默认的事务版本。

String
version
(可选)

要与之建立连接的地理数据库事务版本或历史标记。 默认选项将使用默认事务版本。

如果选择分支版本类型,则会始终连接到默认分支版本。

String
date
(可选)

此值表示在使用启用了存档功能的数据时,将用于连接到数据库的日期和时间。

可按以下格式输入日期:

  • 6/9/2011 4:20:15 PM
  • 6/9/2011 16:20:15
  • 6/9/2011
  • 4:20:15 PM
  • 16:20:15

注:

  • 如果所输入的时间无日期,则将使用默认日期 1899 年 12 月 30 日。
  • 如果所输入的日期无时间,则将使用默认时间 12:00:00 AM。

Date

派生输出

名称说明数据类型
out_workspace

输出数据库连接文件 (.sde)。

workspace

代码示例

CreateDatabaseConnection 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何在即时模式下使用 CreateDatabaseConnection 函数。

import arcpy
arcpy.CreateDatabaseConnection_management("C:\\MyProject",
                                          "utah.sde",
                                          "SQL_SERVER",
                                          "utah",
                                          "DATABASE_AUTH",
                                          "gdb",
                                          "gdb",
                                          "SAVE_USERNAME",
                                          "garfield",
                                          "#",
                                          "TRANSACTIONAL",
                                          "sde.DEFAULT")
CreateDatabaseConnection 示例 2(独立脚本)

以下独立脚本演示了如何使用 CreateDatabaseConnection 函数。

# Name: CreateDatabaseConnection2.py
# Description: Connects to a database using Easy Connect string
#              and operating system authentication.

# Import system modules
import arcpy

# Run the tool
arcpy.CreateDatabaseConnection_management("C:\\MyProject",
                                          "zion.sde",
                                          "ORACLE",
                                          "zionserver/ORCL",
                                          "OPERATING_SYSTEM_AUTH")
CreateDatabaseConnection 示例 3(Python 窗口)

以下 Python 窗口脚本演示了如何使用 CreateDatabaseConnection 函数连接到历史标记。

# Name: CreateDatabaseConnection3.py
# Description: Connects to a geodatabase historical marker using a
#              cataloged DB2 database and database authentication.

# Import system modules
import arcpy

# Run the tool
arcpy.CreateDatabaseConnection_management("C:\\MyProject",
                                          "history.sde",
                                          "DB2",
                                          "DB2_DS",
                                          "DATABASE_AUTH",
                                          "butch",
                                          "sundance",
                                          "SAVE_USERNAME",
                                          "#",
                                          "#",
                                          "HISTORICAL",
                                          "June 9, 2010",
                                          "#")
CreateDatabaseConnection 示例 4(Python 窗口)

以下 Python 窗口脚本演示了如何使用 CreateDatabaseConnection 函数连接到时间点。

# Name: CreateDatabaseConnection4.py
# Description: Connects to a point in time in the geodatabase in
#              PostgreSQL using database authentication.

# Import system modules
import arcpy

# Run the tool
arcpy.CreateDatabaseConnection_management("C:\\MyProject",
                                          "history.sde",
                                          "POSTGRESQL",
                                          "dbserver",
                                          "DATABASE_AUTH",
                                          "stevie",
                                          "smith",
                                          "SAVE_USERNAME",
                                          "archivedb",
                                          "#",
                                          "POINT_IN_TIME",
                                          "#",
                                          "5/19/2011 8:43:41 AM")

许可信息

  • Basic: 否
  • Standard: 是
  • Advanced: 是

相关主题