---
title: "External Database Integration"
slug: "external-database-integration"
description: "This document explains the process of setting up an External Database for integration with Decisions. The included example shows how to integrate Decisions with a simple External Database table via the Create Connection action. "
tags: ["database", "integration"]
updated: 2025-10-17T18:33:40Z
published: 2025-10-17T18:33:40Z
---

> ## Documentation Index
> Fetch the complete documentation index at: https://documentation.decisions.com/llms.txt
> Use this file to discover all available pages before exploring further.

# External Database Integration

## Overview

Decisions allow users to integrate with external databases. The workflow engine does not mandate storing any of its data locally. Instead, it can be integrated with existing databases to enable reading and writing data. This flexibility helps to use the data within Designer Elements (Flow, Forms, Rules, Reports, etc.) to perform CRUD (Create, Read, Update, and Delete) actions on the connected database. The following document explains the various options and settings involved in configuring a connection to an existing database.

Following are types of Database that can be integrated:

- MSSQL
- [MySQL](https://documentation.decisions.com/v9/docs/connect-to-mysql)
- [Oracle](https://documentation.decisions.com/v9/docs/integrating-decisions-with-external-oracle-db)
- Azure
- [PostgreSQL](https://documentation.decisions.com/v9/docs/advanced-postgres-connection)
- [ODBC](https://documentation.decisions.com/v9/docs/connecting-with-an-odbc)
- Azure Synapse
- Mongo DB - Users must install the [Mongo DB Module](https://documentation.decisions.com/v9/docs/mongodb-module-overview).
- IBM DB2 ODBC - Users must install the [IBM DB2 Module](https://documentation.decisions.com/docs/odbc-db2).

[Embedded content](https://www.youtube.com/embed/WHknGQ7jepc?&amp;wmode=opaque&amp;rel=0)

---

## System Level External Database Integrations

Starting in v9.4 users can no longer create External Database connections at the System level. All External Database connections must be made inside a Project.

External Database connections that were created in earlier versions at the System level will not be broken. However, no new integrations will be able to be made with them inside a Project after upgrade.

Local Database connections will function like normal from the System level. This only impacts External Database connections.

Same Name IntegrationsIn v9.5+ existing integrations with identical names will work properly on Import and Checkout. New integrations cannot be created if they have a name that matches an existing integration.

---

## Configuration

Alternative Method to Create Database IntegrationUsers can also create a database connection with the folder actions in **Designer Entities**by **right-clicking Data Structures > CREATE DATATYPES/INTEGRATION** (top option)and selecting **Database Integration**. 

1. Navigate to**Project > Manage > Integrations > Databases** and click CREATE CONNECTION.![](https://cdn.document360.io/6ef8bcc1-6489-4486-9ad1-83acff7e5df0/Images/Documentation/image-1750165874688.png)
2. In the **Database Integration**window, complete the fields required for integrating with the desired external database type. 

| Configuration Option | Description |
| --- | --- |
| Connection Name | This will be the name of the Connection |
| Database Type | The type of database that will be integrated with (MSSQL, MYSQL, ORACLE, AZURE (SQL), POSTGRES, ODBC, AZURESYNAPSE) |
| Use Agent | Check this setting to get Decisions' integration settings from a database Agent. For more information, refer to [Database Integration via Agent](https://documentation.decisions.com/v9/docs/database-integration-through-an-agent). |
| Use Custom Connection String | Allows users to connect to a database via a custom connection string. |
| Server Name | The DNS name or IP of the server running the database. |
| Database Name | Name of the database |
| Windows Authentication | Checking this box will use the windows logon to access the database. |
| **SQL Authentication** |
| - User Name | Username of the SQL account used to access the database. |
| - Password | The password of the SQL account access the database. |
| - Use an Encrypted Connection | When enabled, the connection between the client and server will be encrypted only if the Root SSL certificate is installed. For more information, refer to [Microsoft's official document](https://learn.microsoft.com/en-us/sql/database-engine/configure-windows/configure-sql-server-encryption?view=sql-server-ver16). |
| - Trust Server Certificate | When enabled, the transport layer will use SSL to encrypt the channel and bypass walking the certificate chain to validate trust. For more information, refer to [Microsoft's official document](https://learn.microsoft.com/en-us/dotnet/api/system.data.sqlclient.sqlconnectionstringbuilder.trustservercertificate?view=dotnet-plat-ext-7.0#remarks). |
| **Using**[**Azure Service Principal**](https://documentation.decisions.com/v9/docs/installing-decisions-using-azure-service-principal)**Authentication** |
| - App ID | This is the [Application (client) ID](https://documentation.decisions.com/v9/docs/installing-decisions-using-azure-service-principal?highlight=App%20Registrations%20in%20Azure) of the registered app under Entra ID (formerly known as Azure AD). |
| - Client Secret | This is the value of the [Secret ID](https://documentation.decisions.com/v9/docs/installing-decisions-using-azure-service-principal?highlight=App%20Registrations%20in%20Azure) generated for the registered App under Entra ID (formerly known as Azure AD). |
| - Tenant ID | This is the [Directory (tenant) ID](https://documentation.decisions.com/v9/docs/installing-decisions-using-azure-service-principal?highlight=App%20Registrations%20in%20Azure) [](https://documentation.decisions.com/v9/docs/installing-decisions-using-azure-service-principal?highlight=App%20Registrations%20in%20Azure)**[](https://documentation.decisions.com/v9/docs/installing-decisions-using-azure-service-principal?highlight=App%20Registrations%20in%20Azure)**of the registered app under Entra ID (formerly known as Azure AD). Refer to Installing Decisions "Using Azure Service Principal" for reference. |
| **Using SSL for PostgreSQL** |
| - Disable, Allow, Prefer and Require | Refer to [PostgreSQL's official documentation](https://www.postgresql.org/docs/15/libpq-ssl.html#LIBPQ-SSL-PROTECTION) for a description. |
| **Oracle** |
| - Use TNS | When enabled, the connection will follow the OCI (Oracle Call Interface) connection string. |
| - Host Name | Host name of the Oracle server |
| - Port | The port on which the server is running |
3. After filling in all the details. Click on **Test** to validate the connection to the Database. A **Status**field will appear in the bottom right corner.
4. Check for the **Status**. If the Status indicates 'success', it means that the connection was established successfully. In case of a failed connection, the Status will provide validation which can be used as a reference to troubleshoot the issue. Refer to the following image.![](https://cdn.document360.io/6ef8bcc1-6489-4486-9ad1-83acff7e5df0/Images/Documentation/image-1678274938776.png)

Creating Tables using External DatabaseTo add tables from the external database into Decisions, refer to [Integrate with Database Table](https://documentation.decisions.com/v9/docs/integrate-with-database-table).

---

## Updating External Connection String

Users can update the connection string of the already integrated external database. The primary use case of this might be to update the connection string of an external database when migrating from a development environment to a production environment.

Before updating the connection string, have the original connection string documented and stored in case the connection string must change back to the original.

1. Navigate to **Projects****> Manage > Integrations > Databases**. Go to the Connections view. Then right-click the desired entity and select **Edit Database Definition [Advanced]**.![](https://cdn.document360.io/6ef8bcc1-6489-4486-9ad1-83acff7e5df0/Images/Documentation/image-1750168257582.png)
2. Connections can also be edited by clicking on the Database and using the menu action.![](https://cdn.document360.io/6ef8bcc1-6489-4486-9ad1-83acff7e5df0/Images/Documentation/image-1750168602063.png)
3. Unselect **Use Current Database** and paste the updated connection string in the **Connection String** field**.**
4. Click **SAVE**.

### Updating via API

In v9.16 and above uses have access to the UpdateDatabaseData service method, under the integration service DatabaseDataService. This can be used to make API calls to update the database integration.

---

## Feature Changes

| Description | Version | Release Date | Developer Task |
| --- | --- | --- | --- |
| New Database Integration dialog. Pathway changed. | [9.1](https://documentation.decisions.com/v99/docs/version-91x-release-notes) | July 2024 | [DT-039372] |
| External database connections can no longer be made at the System level. | [9.4](https://documentation.decisions.com/v99/docs/version-94x-release-notes) | November 2024 | [DT-041988] |
| Integrations with the same name will no longer prevent checkout. | [9.5](https://documentation.decisions.com/v99/docs/version-95x-release-notes) | November 2024 | [DT-042970] |
| Added IBM DB2 support. | [9.6](https://documentation.decisions.com/v99/docs/version-96x-release-notes) | January 2025 | [DT-043165] |
| Added a new service, UpdateDatabaseData in DatabaseDataService. | [9.16](https://documentation.decisions.com/v99/docs/version-916x-release-notes) | October 2025 | [DT-045530] |

---

For further information on Integrations, visit the [Decisions Forum](https://community.decisions.com/categories/Integrations).
