# Microsoft SQL Server - Workflow node | Docs - nodulz

Source: https://nodulz.com/docs/nodes/mssql

Language: en

Run SQL, a stored procedure or row operations on SQL Server

## Usage and specifics

Select a SQL Server credential and target resource. Account permissions apply to queries and monitoring. Trigger settings determine which changes are detected after publishing.

Technical type : `mssql`. Runtime : `nodulz`.

## Credentials and prerequisites

- [Microsoft SQL Server](/docs/credentials) (`database` / `mssql`). SQL Server or Azure SQL database

Create credentials in your nodulz instance’s Credentials area, then select them on the node. Availability depends on ownership and sharing. See the [credentials guide](/docs/credentials) for access and rotation.

## Parameters

Names below are technical keys. Defaults are not a ready-to-run configuration: complete fields required by your operation. Paths containing [] describe list items; some fields depend on the selected mode.

| Parameter | Type | Default | Values / limits |
| --- | --- | --- | --- |
| `credentialId` | `string` | `""` | - |
| `operation` | `enum` | `"query"` | `query`, `select`, `insert`, `update`, `delete`, `procedure` |
| `query` | `string` | `"SELECT 1 AS ok"` | - |
| `parameters` | `string` | `"{}"` | - |
| `procedure` | `string` | `""` | - |
| `table` | `string` | `""` | - |
| `data` | `string` | `"{}"` | - |
| `match` | `string` | `"{}"` | - |
| `orderBy` | `string` | `""` | - |
| `limit` | `number` | `100` | -; ≥ 1, ≤ 10000 |
| `returnRows` | `boolean` | `true` | - |
| `timeout` | `number` | `30` | -; ≥ 1, ≤ 600 |

## Configuration help

| Setting | Purpose and guidance |
| --- | --- |
| `credentialId`<br>Connection credential | SQL Server credential. Enable SSL for Azure SQL. |
| `operation`<br>Operation | Update and delete require at least one condition. |
| `query`<br>SQL query | Use @name with the parameters. An expression in the query is sent as a parameter: do not wrap it in quotes. |
| `procedure`<br>Stored procedure | Procedure name, with its schema if needed. |
| `parameters`<br>JSON parameters | Object {"name": value} for @name, or an array for @p1, @p2… |
| `table`<br>Table | Table name, for example dbo.users. |
| `match`<br>JSON conditions | Equalities combined with AND. null matches IS NULL. |
| `orderBy`<br>Sort | Comma-separated columns, with ASC or DESC. |
| `limit`<br>Maximum rows | From 1 to 10,000. |
| `returnRows`<br>Return changed rows | Turn off if the table has SQL triggers. |
| `timeout`<br>Timeout (seconds) | The query is cancelled after this delay. |

## Initial configuration

Initial catalog configuration example, to adapt before running. Keep secrets in credentials.

```json
{
  "credentialId": "",
  "operation": "query",
  "query": "SELECT 1 AS ok",
  "parameters": "{}",
  "procedure": "",
  "table": "",
  "data": "{}",
  "match": "{}",
  "orderBy": "",
  "limit": 100,
  "returnRows": true,
  "timeout": 30
}
```

## Verification

Test with representative data. Check node output in the inspector and logs, then use editor mapping for downstream fields. A trigger test with a simulated payload does not validate external service delivery.

See also : [Expressions and data](/docs/expressions), [Executions](/docs/executions), [Node catalog](/docs/nodes).

## Explore further

- [Features - nodulz](https://nodulz.com/product/overview)
- [Node catalog - nodulz](https://nodulz.com/product/catalog)
- [MCP server - nodulz](https://nodulz.com/product/mcp)
- [Pricing - nodulz](https://nodulz.com/pricing)
- [Use cases and workflow automation - nodulz](https://nodulz.com/use-cases)
- [Choose what your workflows can do. - nodulz](https://nodulz.com/compare)
- [Documentation - nodulz](https://nodulz.com/docs)
