Create Database Connection (Data Management)

Summary

Creates a file that ArcGIS uses to connect to a database or an enterprise geodatabase.

Usage

  • After valid connection information is entered to establish a connection in the tool dialog box, the tool will connect to the database to determine if it contains the geodatabase schema.

    • For databases, all the parameters in the Geodatabase Connection Properties section of the tool dialog box are ignored.
    • For geodatabases, the tool automatically populates the Geodatabase Connection Properties section. The Schema parameter is set with the sde schema (for Oracle user schema geodatabases only), the default Version Type for the geodatabase, and the Default version.
  • Connections from ArcGIS to Altibase and Netezza are no longer supported.

Syntax

arcpy.management.CreateDatabaseConnection(out_folder_path, out_name, database_platform, instance, {account_authentication}, {username}, {password}, {save_user_pass}, {database}, {schema}, {version_type}, {version}, {date})
ParameterExplanationData Type
out_folder_path

The folder path where the database connection file (.sde file) will be stored.

Folder
out_name

The name of the database connection file. The output file will have the extension .sde.

String
database_platform

Specifies the database management system platform to which you will be connecting. The following are valid options:

  • DAMENGTo connect to Dameng
  • DB2To connect to IBM Db2 for Linux, UNIX, or Windows
  • INFORMIXTo connect to IBM Informix
  • ORACLETo connect to Oracle
  • POSTGRESQLTo connect to PostgreSQL
  • SAP HANATo connect to SAP HANA
  • SQL_SERVERTo connect to Microsoft SQL Server, Microsoft Azure SQL Database, or Amazon Relational Database Service for SQL Server
  • TERADATATo connect to Teradata Data Warehouse Appliance
String
instance

The database server or instance to which you will connect.

The value you specify for the database_platform parameter indicates the type of database to which you want to connect. The information you provide for the instance parameter varies, depending on the database platform you specified.

See below for further information on what to provide for each database platform.

  • Dameng—The name of the server where the Dameng database is installed
  • DB2—The name of the cataloged Db2 database
  • Informix—The Open Database Connectivity (ODBC) data source name for the Informix database
  • Oracle—Either the TNS name or the Oracle Easy Connection string to connect to the Oracle database
  • PostgreSQL—The name of the server where PostgreSQL is installed or the name of the PostgreSQL database service instance
  • SAP HANA—The ODBC data source name for the SAP HANA database
  • SQL Server—The name of the SQL Server or SQL Database instance
  • Teradata—The ODBC data source name for the Teradata database
String
account_authentication
(Optional)

Specifies the type of authentication that will be used.

  • DATABASE_AUTHDatabase authentication will be used. An internal database user name and a password are used to connect to the database. You aren't required to type your user name and password to create a connection; however, if you don't, you will be prompted to enter them when a connection is established.
    Note:

    If the connection file you are creating will provide ArcGIS services with access to the database or geodatabase, or if you want to use the Catalog search to locate data accessed through this connection file, you must type a user name and password.

  • OPERATING_SYSTEM_AUTHOperating system authentication will be used. You do not need to type a user name and password. The connection will be made with the user name and password that were used to log in to the operating system. If the login used for the operating system is not a valid geodatabase login, the connection will fail.
Boolean
username
(Optional)

The database user name that will be used when using database authentication.

String
password
(Optional)

The database user password that will be used when using database authentication.

Encrypted String
save_user_pass
(Optional)

Specifies whether the user name and password will be saved.

  • SAVE_USERNAMEThe user name and password will be saved in the connection file. This is the default. If the connection file you are creating will provide ArcGIS services with access to the database, you must save a user name and password.
  • DO_NOT_SAVE_USERNAMEThe user name and password will not be saved in the file. Every time you attempt to connect using the file, you will be prompted for the user name and password.
Boolean
database
(Optional)

The name of the database to which you will connect. This parameter only applies to PostgreSQL and SQL Server platforms.

String
schema
(Optional)

The user schema geodatabase to which you will connect. This option only applies to Oracle databases that contain at least one user–schema geodatabase. The default value for this parameter is to use the sde schema (master) geodatabase.

String
version_type
(Optional)

Specifies the type of version to which you will connect.

  • TRANSACTIONALConnect to a traditional transactional version.
    Note:

    This option does not apply to geodatabases in SAP HANA.

  • HISTORICALConnect to an historical marker.
  • POINT_IN_TIMEConnect to a specific point in time. If POINT_IN_TIME is used, the version parameter will be ignored.
  • BRANCHConnect to the default branch version.

Note:

If TRANSACTIONAL or HISTORICAL is used, the date parameter will be ignored. If HISTORICAL is used and a name is not provided in the version parameter, the default transactional version will be used. If POINT_IN_TIME is used and a date is not provided in the date parameter, the default transactional version will be used.

String
version
(Optional)

The geodatabase transactional version or historical marker to connect to. The default option uses the default transactional version.

If you choose a branch version type, the connection is always to the default branch version.

String
date
(Optional)

The value representing the date and time that will be used to connect to the database when working with archive-enabled data.

Dates can be entered in the following formats:

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

Note:

  • If a time is entered without a date, the default date of December 30, 1899, will be used.
  • If a date is entered without a time, the default time of 12:00:00 AM will be used.

Date

Derived Output

NameExplanationData Type
out_workspace

The output database connection file (.sde file).

workspace

Code sample

CreateDatabaseConnection example 1 (Python window)

The following Python window script demonstrates how to use the CreateDatabaseConnection tool in immediate mode.

import arcpy
arcpy.CreateDatabaseConnection_management("C:\\MyProject",
                                          "utah.sde",
                                          "SQL_SERVER",
                                          "utah",
                                          "DATABASE_AUTH",
                                          "gdb",
                                          "gdb",
                                          "SAVE_USERNAME",
                                          "garfield",
                                          "#",
                                          "TRANSACTIONAL",
                                          "sde.DEFAULT")
CreateDatabaseConnection example 2(stand-alone script)

The following stand-alone script demonstrates how to use the CreateDatabaseConnection tool.

# 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 example 3 (Python window)

The following Python window script demonstrates how to use the CreateDatabaseConnection tool to connect to an historical marker.

# 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 example 4 (Python window)

The following Python window script demonstrates how to use the CreateDatabaseConnection tool to connect to a point in time.

# 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")

Environments

Licensing information

  • Basic: No
  • Standard: Yes
  • Advanced: Yes

Related topics