ArcGIS for Desktop

  • 文档
  • 合约
  • 支持

  • My Profile
  • 帮助
  • Sign Out
ArcGIS for Desktop

ArcGIS Online

专为贵组织打造的制图平台

ArcGIS for Desktop

全面的专业性 GIS

ArcGIS for Server

面向企业的 GIS

ArcGIS for Developers

用于构建位置感知应用程序的工具

ArcGIS Solutions

适用于行业的免费模板地图和应用程序

ArcGIS Marketplace

获取适用于组织的应用程序和数据

  • 文档
  • 合约
  • 支持
Esri
  • 登录
user
  • 我的个人资料
  • 登出

帮助

  • 主页
  • 入门
  • 制图
  • 分析
  • 管理数据
  • 工具
  • 更多...

创建数据库连接

  • 摘要
  • 用法
  • 语法
  • 代码实例
  • 环境
  • 许可信息

摘要

创建一个可用于连接到数据库或企业级地理数据库、工作组级地理数据库或 desktop 地理数据库的连接文件。

用法

  • 使用工具对话框时,如果已输入有效连接信息,则工具将连接到数据库,以确定数据库是否包含地理数据库方案。如果存在方案,服务器将会使用 SDE 方案(对于 Oracle 用户,仅限方案地理数据库)自动填充方案参数、使用 TRANSACTIONAL 关键字填充版本类型参数以及使用默认版本名称填充版本名称参数。

  • 如果要防止连接信息被保存在结果窗口中或存储在地理处理历史日志文件中,则禁用历史日志,并在保存连接文件时不保存连接信息。

  • 当所连接的数据库不是地理数据库时,工具对话框地理数据库连接属性部分中的所有参数都将忽略。

语法

CreateDatabaseConnection_management (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

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

  • SQL_SERVER —用于连接到 Microsoft SQL Server
  • ORACLE —用于连接到 Oracle
  • DB2 —用于连接到 Linux、UNIX 或 Windows 上的 IBM DB2
  • DB2ZOS —用于连接到 z/OS 上的 IBM DB2
  • INFORMIX —用于连接到 IBM Informix
  • NETEZZA —用于连接到 IBM Netezza
  • POSTGRESQL —用于连接到 PostgreSQL
  • TERADATA —用于连接到 Teradata
  • SAP_HANA —用于连接到 SAP HANA
  • ALTIBASE —用于连接到 ALTIBASE
String
instance

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

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

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

  • ALTIBASE - ALTIBASE 数据库的 ODBC 数据源名称
  • DB2 - 编入目录的 DB2 数据库的名称
  • DB2 for Z/OS - 编入目录的 DB2 数据库的名称
  • Informix - Informix 数据库的开放式数据库连通性 (ODBC) 数据源名称
  • Oracle - 连接到 Oracle 数据库的 TNS 名称或 Oracle Easy Connection 字符串
  • Netezza - Netezza 数据库的 ODBC 数据源名称
  • PostgreSQL - 安装 PostgreSQL 的服务器的名称
  • SAP HANA - SAP HANA 数据库的 ODBC 数据源名称
  • SQL Server - SQL Server 实例的名称
  • Teradata - Teradata 数据库的 ODBC 数据源名称
String
account_authentication
(可选)
  • DATABASE_AUTH —数据库身份验证。使用内部数据库用户名和密码连接到数据库。创建连接无需输入用户名和密码;但是,如果不输入用户名和密码,系统将在连接建立好之后提示您输入用户名和密码。
    注:

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

  • OPERATING_SYSTEM_AUTH —使用操作系统身份验证。不必输入用户名和密码。将用登录操作系统时所使用的用户名和密码建立连接。如果操作系统使用的登录信息不能用作地理数据库的登录信息,连接将失败。另请注意,如果要与 Oracle、DB2 或 Informix 中存储的地理数据库建立连接,您必须创建到数据库的直接连接。
Boolean
username
(可选)

采用“数据库身份验证”连接时使用的数据库用户名。

String
password
(可选)

当使用“数据库身份验证”时所需的数据库用户密码。

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

需要连接的数据库的名称。此参数仅适用于 PostgreSQL 和 SQL Server 平台。

String
schema
(可选)

要连接到的用户方案地理数据库。此选项仅适用于至少包含一个用户方案地理数据库的 Oracle 数据库。此参数的默认值为使用 SDE 方案(主)地理数据库。

String
version_type
(可选)

要连接的版本类型。

  • TRANSACTIONAL —用于连接到事务版本。
  • HISTORICAL —用于连接到历史标记。
  • POINT_IN_TIME —用于连接到特定时间点。如果使用 POINT_IN_TIME,“版本名称”参数将忽略。

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

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

代码实例

CreateDatabaseConnection 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何在即时模式下使用创建数据库连接 (CreateDatabaseConnection) 工具。

import arcpy
arcpy.CreateDatabaseConnection_management("Database Connections",
                                          "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("Database Connections",
                                          "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("Database Connections",
                                          "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("Database Connections",
                                          "history.sde",
                                          "POSTGRESQL",
                                          "dbserver",
                                          "DATABASE_AUTH",
                                          "stevie",
                                          "smith",
                                          "SAVE_USERNAME",
                                          "archivedb",
                                          "#",
                                          "POINT_IN_TIME",
                                          "#",
                                          "5/19/2011 8:43:41 AM")

环境

  • 当前工作空间
有关此主题的反馈?

ArcGIS for Desktop

  • 主页
  • 文档
  • 合约
  • 支持

ArcGIS 平台

  • ArcGIS Online
  • ArcGIS for Desktop
  • ArcGIS for Server
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

  • 关于我们
  • 招贤纳士
  • 内部人员博客
  • 用户大会
  • 开发者峰会
Esri
© Copyright 2016 Environmental Systems Research Institute, Inc. | 隐私政策 | 法律声明