# Execute a SQL Query

> Execute a SQL Query activity in the Databricks connector.

## Project compatibility

Windows | Cross-platform

## Overview

| Description | API Method | API Path |
| --- | --- | --- |
| Run a SQL statement on a Databricks SQL warehouse. Requires warehouse_id and statement; rows come back under result.data_array with column metadata in manifest.schema. | POST | `/statements` |

## Input

| Parameter | Description | Data Type |
| --- | --- | --- |
| SQL Statement \* | The SQL statement to execute. For example, `SELECT * FROM hive_metastore.default.p_order LIMIT 10`. | string |
| Warehouse ID \* | ID of the SQL warehouse to run the statement on. For example, `a1b2c3d4e5f6a7b8`. | string |
| Catalog | Catalog used as the default for the statement. For example, `main`. | string |
| Schema | Schema used as the default for the statement. For example, `default`. | string |
| Wait Timeout | How long to wait synchronously, 0s or 5s-50s. Default: `30s`. | string |
| On Wait Timeout | CONTINUE returns a statement_id to poll; CANCEL aborts the statement. For long queries, set **Wait Timeout** to `0s` and **On Wait Timeout** to `CONTINUE`, then poll with Get SQL Statement Result. Allowed values: `CONTINUE`, `CANCEL`. Default: `CONTINUE`. | string |
| Row Limit | Maximum number of rows to return. For example, `1000`. | integer |
| Byte Limit | Maximum result size in bytes. For example, `10485760`. | integer |
| Disposition | INLINE returns data in the response; EXTERNAL_LINKS returns presigned URLs. Allowed values: `INLINE`, `EXTERNAL_LINKS`. Default: `INLINE`. | string |
| Format | Result serialization format. Allowed values: `JSON_ARRAY`, `ARROW_STREAM`, `CSV`. Default: `JSON_ARRAY`. | string |
| Parameters | Named parameter markers, for example [{"name":"p","value":"1","type":"INT"}]. | array |

\* Required parameter.

## Output

| Parameter | Description | Data Type |
| --- | --- | --- |
| Statement ID | Server-assigned statement id; poll with Get Statement. | string |
| Status | Execution state: PENDING, RUNNING, SUCCEEDED, FAILED, CANCELED, CLOSED. | object |
| Manifest | Result schema, chunk layout and row counts. | object |
| Result | Result payload; row data is under result.data_array. | object |

:::note
You might see variations in the output depending on where you run the activity. In API workflows and Maestro Flow, a single response object containing all the fields is returned. In RPA workflows, not all fields are exposed, but you can still retrieve them from the exposed response object.
:::
