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 on the tool dialog box to establish a connection, 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 value for the geodatabase, and the Default version.
  • Connections from ArcGIS to Altibase and Netezza are no longer supported.

Parameters

LabelExplanationData Type
Connection File Location

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

Folder
Connection File 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 the connection will be made. The following are valid options:

  • DamengConnect to Dameng.
  • Db2Connect to IBM Db2 for Linux, UNIX, or Windows.
  • OracleConnect to Oracle, Amazon Relational Database Service (RDS) for Oracle, or Autonomous Transaction Processing.
  • PostgreSQLConnect to PostgreSQL, Amazon Aurora (PostgreSQL-compatible edition), Amazon Relational Database Service (RDS) for PostgreSQL, Microsoft Azure Database for PostgreSQL, or Google Cloud SQL for PostgreSQL.
  • TeradataConnect to Teradata Vantage.
  • SAP HANAConnect to SAP HANA or SAP HANA Cloud.
  • SQL ServerConnect to Microsoft SQL Server, Microsoft Azure SQL Database, Microsoft Azure SQL Managed Instance, or Amazon Relational Database Service (RDS) for SQL Server, or Google Cloud SQL for SQL Server.
String
Instance

The database server or instance to which the connection will be made.

The value you choose from the Database Platform drop-down list indicates the type of database to which the connection will be made. The information you provide for the Instance parameter varies, depending on the connection type you choose.

See below for information about 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
  • Oracle—Either the TNS name or the Oracle Easy Connection string to connect to the Oracle database or database service
  • PostgreSQL—The name of the server where PostgreSQL is installed or the name of the PostgreSQL database service instance
  • SAP HANA—The Open Database Connectivity (ODBC) data source name for the SAP HANA database or database service
  • SQL Server—The name of the SQL Server database instance or the name of the database service instance.
  • Teradata—The ODBC data source name for the Teradata database
String
Database Authentication
(Optional)

Specifies the type of authentication that will be used.

  • Database authenticationDatabase authentication will be used. An internal database username and a password will be used to connect to the database. You aren't required to type your username 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 include a username and password.

  • Operating system authenticationOperating system authentication will be used. You do not need to type a username and password. The connection will be made with the username 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 username that will be used for database authentication.

String
Password
(Optional)

The database user password that will be used for database authentication.

Encrypted String
Save username and password
(Optional)

Specifies whether the username and password will be saved.

  • Checked—The username 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 or geodatabase, or if you want to use the Catalog search to locate data accessed through this connection file, you must save the username and password.
  • Unchecked—The username and password will not be saved in the connection file. Every time you attempt to connect using the file, you will be prompted for the username and password.
Boolean
Database
(Optional)

The name of the database to which the connection will be made. This parameter only applies to PostgreSQL and SQL Server platforms.

String
Schema (Oracle user schema geodatabases only)
(Optional)

The user schema geodatabase to which the connection will be made. The tool will determine if it is connecting to an Oracle database that contains a user–schema geodatabase. If the Oracle database contains a user schema, this option is active; otherwise, it remains inactive. The default option for this parameter is to use the sde schema geodatabase.

String
Version Type
(Optional)

Specifies the type of version to which the connection will be made. This parameter only applies when connecting to a geodatabase.

Note:

If Historical is selected and a name is not provided, the default transactional version is used. If Point in time is selected and a date is not provided for the Date and Time parameter, the default transactional version is used.

  • TransactionalConnect to a transactional version. If Transactional is selected, the The following version will be used parameter will be populated with a list of transactional versions, and the Date and Time parameter will be inactive. This is the default.
  • HistoricalConnect to an historical marker. If Historical is selected, the The following version will be used parameter will be populated with a list of historical markers, and the Date and Time parameter will be inactive.
  • Point in timeConnect to a specific point in time. If Point in time is selected, the The following version will be used parameter will be inactive, and the Date and Time parameter will become active.
  • BranchConnect to the default branch version.
String
The following version will be used
(Optional)

The geodatabase transactional version or historical marker to which the connect will be made. 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 and Time
(Optional)

The value representing the date and time that will be used to connect to the database. This option is used with archive-enabled data. Use the time picker to choose the appropriate date.

If manually entering a date, the following formats can be used:

  • 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, is used.
  • If a date is entered without a time, the default time of 12:00:00 AM will be used.

Date

Derived Output

LabelExplanationData Type
Output Workspace

The output database connection file (.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})
NameExplanationData Type
out_folder_path

The folder path where the database connection file (.sde) 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 the connection will be made. The following are valid options:

  • DAMENGConnect to Dameng.
  • DB2Connect to IBM Db2 for Linux, UNIX, or Windows.
  • ORACLEConnect to Oracle, Amazon Relational Database Service (RDS) for Oracle, or Autonomous Transaction Processing.
  • POSTGRESQLConnect to PostgreSQL, Amazon Aurora (PostgreSQL-compatible edition), Amazon Relational Database Service (RDS) for PostgreSQL, Microsoft Azure Database for PostgreSQL, or Google Cloud SQL for PostgreSQL.
  • SAP HANAConnect to SAP HANA or SAP HANA Cloud.
  • SQL_SERVERConnect to Microsoft SQL Server, Microsoft Azure SQL Database, Microsoft Azure SQL Managed Instance, or Amazon Relational Database Service (RDS) for SQL Server, or Google Cloud SQL for SQL Server.
  • TERADATAConnect to Teradata Vantage.
String
instance

The database server or instance to which the connection will be made.

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

See below for information about 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
  • Oracle—Either the TNS name or the Oracle Easy Connection string to connect to the Oracle database or database service
  • PostgreSQL—The name of the server where PostgreSQL is installed or the name of the PostgreSQL database service instance
  • SAP HANA—The Open Database Connectivity (ODBC) data source name for the SAP HANA database or database service
  • SQL Server—The name of the SQL Server database instance or the name of the database service 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 username and a password will be used to connect to the database. You aren't required to type your username 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 include a username and password.

  • OPERATING_SYSTEM_AUTHOperating system authentication will be used. You do not need to type a username and password. The connection will be made with the username 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 username that will be used for database authentication.

String
password
(Optional)

The database user password that will be used for database authentication.

Encrypted String
save_user_pass
(Optional)

Specifies whether the username and password will be saved.

  • SAVE_USERNAMEThe username 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 or geodatabase, or if you want to use the Catalog search to locate data accessed through this connection file, you must save the username and password.
  • DO_NOT_SAVE_USERNAMEThe username and password will not be saved in the connection file. Every time you attempt to connect using the file, you will be prompted for the username and password.
Boolean
database
(Optional)

The name of the database to which the connection will be made. This parameter only applies to PostgreSQL and SQL Server platforms.

String
schema
(Optional)

The user schema geodatabase to which the connection will be made. 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 geodatabase.

String
version_type
(Optional)

Specifies the type of version to which the connection will be made.

  • 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 for the version parameter, the default transactional version will be used. If POINT_IN_TIME is used and a date is not provided for the date parameter, the default transactional version will be used.

String
version
(Optional)

The geodatabase transactional version or historical marker to which the connect will be made. 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).

workspace

Code sample

CreateDatabaseConnection example 1 (Python window)

The following Python window script demonstrates how to use the CreateDatabaseConnection function 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 function.

# 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 function 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 function 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