> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://apidocs.polytomic.com/2024-02-08/guides/configuring-your-connections/connections/azuresql/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://apidocs.polytomic.com/_mcp/server. # Azure SQL Supports: * ✅ Models * ✅ Model sync destination * ✅ Bulk sync source * ✅ Bulk sync destination ## Connection ### Configuration
NameTypeDescriptionRequired
blobStore boolean Use Azure blob storage for faster bulk loading (destination only) ↓ optional
database string Database required
hostname string Server required
password string Password required
port integer Port required
ssh boolean Connect over SSH tunnel ↓ optional
ssl boolean Use SSL optional
username string Username required
#### `blobStore` When `blobStore` is `true`:
NameTypeDescriptionRequired
access_key string Storage account access key (destination only) required
account_name string Storage account name (destination only) required
container_name string Storage container name (destination only) required
```json { "name": "Azure SQL connection", "type": "azuresql", "configuration": { "access_key": "abcdefghijklmnopqrstuvwxyz0123456789/+ABCDEabcdefghijklmnopqrstuvwxyz0123456789/+ABCDE==", "account_name": "account", "blobStore": true, "container_name": "container", "database": "sampledb", "hostname": "example.database.windows.net", "password": "secret", "port": 1433, "ssh": false, "ssl": true, "username": "user" } } ``` #### `ssh` When `ssh` is `true`:
NameTypeDescriptionRequired
ssh_host string SSH host required
ssh_port integer SSH port required
ssh_private_key string Private key required
ssh_user string SSH user required
```json { "name": "Azure SQL connection", "type": "azuresql", "configuration": { "blobStore": false, "database": "sampledb", "hostname": "example.database.windows.net", "password": "secret", "port": 1433, "ssh": true, "ssh_host": "bastion.example.com", "ssh_port": 22, "ssh_private_key": "", "ssh_user": "root", "ssl": true, "username": "user" } } ``` #### Example ```json { "name": "Azure SQL connection", "type": "azuresql", "configuration": { "blobStore": false, "database": "sampledb", "hostname": "example.database.windows.net", "password": "secret", "port": 1433, "ssh": false, "ssl": true, "username": "user" } } ``` ## Model Sync ### Source #### Configuration
NameTypeDescriptionRequired
query string optional
table string Table optional
view string View optional
#### Example ```json { ... "configuration": { "query": "SELECT * from users", "table": "users", "view": "active_users" } } ``` ### Target Azure SQL connections may be used as the destination in a model sync. #### All targets ##### Configuration
NameTypeDescriptionRequired
created_column string 'Created at' timestamp column optional
preserve_table_on_resync boolean Preserve destination table when resyncing optional
updated_column string 'Updated at' timestamp column optional
write_null_values boolean Copy null values

When enabled updates will set fields to NULL when the source value is null
optional
write_record_timestamps boolean Write row timestamp metadata optional
##### Example ```json { ... "target": { "configuration": { "created_column": "", "preserve_table_on_resync": false, "updated_column": "", "write_null_values": false, "write_record_timestamps": false } } } ``` ### Target creation Azure SQL connections may be used to create a new target for a model sync. The following parameters are required to create a new target:
NAME DESCRIPTION ENUM
name Table name false
## Bulk Sync ### Source Azure SQL connections may be used as a bulk sync source. No additional configuration options are required. ### Destination #### Configuration
NameTypeDescriptionRequired
advanced object optional
mirror_schemas boolean Mirror schemas optional
schema string Output schema optional
#### Example ```json { ... "destination_configuration": { "advanced": { "empty_strings_null": true, "hard_deletes": false, "initial_execution": "rebuild", "table_prefix": "", "truncate_existing": false }, "mirror_schemas": false, "schema": "schema" } } ``` ## Type handling ### Destination types | POLYTOMIC TYPE | AZURE SQL TYPE | |-----------------------------|----------------------------| | `array<>` | `NVARCHAR(MAX)` | | `bigint` | `BIGINT` | | `boolean` | `BIT` | | `date` | `DATE` | | `datetime` | `DATETIMEOFFSET` | | `decimal(precision, scale)` | `DECIMAL(precision,scale)` | | `double` | `FLOAT` | | `int` | `INT` | | `json` | `NVARCHAR(MAX)` | | `jsonarray` | `NVARCHAR(MAX)` | | `number` | `NUMERIC(38,10)` | | `object{}` | `NVARCHAR(MAX)` | | `single` | `REAL` | | `smallint` | `SMALLINT` | | `string` | `NVARCHAR(4000)` | | `time` | `TIME` | ### Source types | AZURE SQL TYPE | POLYTOMIC TYPE | |-----------------------------|-----------------------------| | `BIGINT` | `bigint` | | `CHAR` | `string` | | `DATE` | `date` | | `DATETIME` | `datetime` | | `DATETIME2` | `datetime` | | `DATETIMEOFFSET` | `datetime` | | `DECIMAL` | `number` | | `DECIMAL(precision, scale)` | `decimal(precision, scale)` | | `FLOAT` | `double` | | `INT` | `int` | | `MONEY` | `decimal(precision, scale)` | | `NCHAR` | `string` | | `NTEXT` | `string` | | `NUMBER(precision, scale)` | `decimal(precision, scale)` | | `NUMERIC` | `number` | | `NUMERIC(precision, scale)` | `decimal(precision, scale)` | | `NVARCHAR` | `string` | | `REAL` | `single` | | `SMALLDATETIME` | `datetime` | | `SMALLINT` | `smallint` | | `SMALLMONEY` | `decimal(precision, scale)` | | `TEXT` | `string` | | `TIME` | `time` | | `TINYINT` | `smallint` | | `UNIQUEIDENTIFIER` | `string` | | `VARCHAR` | `string` | | `XML` | `string` |