Microsoft SQL Server destination
Renta delivers data from its sources into a Microsoft SQL Server database: a self-managed server, Azure SQL Database, or a managed service such as Amazon RDS for SQL Server.
Each pipeline manages a single table. Renta creates it on the first run with columns matching the fields you selected, and refreshes its contents on every following run.
Requirements
Prepare the server before you add the connection.
- Network access.
Renta connects to the database port (default1433) from the Renta IP addresses. Allow them on the firewall. The server needs no outbound access: Renta delivers rows over the same database connection. - An existing database.
Renta writes only into the database named in the connection and does not create databases. Tables land in the default schema of the connection user, which isdbounless you changed it. - Dedicated user privileges.
The account needs to create, fill, clear, and drop tables in that database. The exact statements are on the user page below.
Connect SQL Server as a destination
A connection stores the address of one SQL Server database together with the credentials Renta signs in with.
- In the Renta console, open Connections > Catalog in the left sidebar.
- Expand the Data warehouse category and click the Microsoft SQL Server card.

Point the connection at the database:
- Server hostname.
The hostname or IP address of the server, without a protocol prefix. For Azure SQL Database this is the value likemyserver.database.windows.net. - Database name.
The existing database that will receive the tables. - Port.
The database port. The SQL Server default is1433.

- User.
The SQL Server account created for Renta. - Password.
The password of that account.
Turn on Trusted connection if you connect to the server over SSL.

Enter a Destination name (a label used only in the Renta console) and click Save.
On save, Renta signs in to the database and runs a test query. A wrong password, a closed port, or a missing database comes back as an error right away, before any pipeline runs.

The connection appears in the Destinations list with the Active status and is ready to be used in pipelines.

Create a pipeline into SQL Server
The steps below use Display & Video 360 as the source, and the same flow applies to every other source.
Click New pipeline in the left sidebar. Keep the ETL tab active, pick a source in the Already connected section, and click Next step.

Pick the source connection to extract data from and click Next step.

On the Destination step, choose Microsoft SQL Server in the Already connected list and click Next step.

Pick the SQL Server connection that will receive the data and click Next step. Each card shows the database name and host, which helps when the workspace holds several servers.

Pipeline configuration
The last step of the wizard gathers every pipeline setting on one page. Source-specific settings sit at the top, followed by the settings that look the same for every source.
Source settings
The first blocks define what to extract, so their content depends on the source. For Display & Video 360 these are the partner, the advertiser, and the report type.

Parameters
Tick the source fields to load. Every ticked field becomes a column of the SQL Server table, and the column name is written under each field.

To take every available field at once, click Select All. The Selected tab collects everything you ticked.
Integration and table name
The next block names the pipeline and its table.

- Integration name.
The display name of the pipeline in the Renta console. - Table name.
The table Renta creates in the connected database. Keep the generated name or type your own. Use a unique name for every pipeline, because each pipeline rewrites its table on every run.
Date range
The date range bounds the history loaded on the first run and on a manual Full refresh.

- Date start.
The first day of the extraction window. - Date end.
The last day of the window: a fixed date or a moving boundary such as Today.
Overwrite period
The overwrite period sets how many recent days are reloaded on every scheduled run. It applies to report types with a date column, which produce partitioned tables.

Renta deletes the rows of that window and inserts them again with fresh values. With Without overwrite data, past rows stay as they are and only new data is appended.
Schedule
The schedule controls when the pipeline runs. All times are in UTC.

| Schedule type | Description |
|---|---|
| Manual | The pipeline runs only when triggered from the Renta console or through the API. |
| Daily | The pipeline runs once a day at the specified update time. |
| Interval | The pipeline runs at specified time intervals. |
| Cron Expression | The pipeline runs on a schedule defined by a cron expression. |
For a Daily schedule, pick the Update time and click Create pipeline.

Pipelines can also be triggered through the API and from orchestrators such as Apache Airflow, Dagster, and Prefect. See the scheduling documentation for details.
The new pipeline shows up on the Pipelines page under the ETL tab with its table name, run status, and extracted row count.

Destination table
Renta owns the destination table: it creates the table on the first run and rebuilds it when the pipeline field list changes.
Column names and types
Column names repeat the field names shown in the pipeline settings. Renta replaces . and : in a name with an underscore, so the field fee.amount becomes the column fee_amount.
| Source value | SQL Server type |
|---|---|
| Whole numbers | INT, or BIGINT for wide ranges |
| Fractional numbers | FLOAT |
| Fixed-point amounts | DECIMAL(18, 2) |
| Text, JSON, and identifiers | NVARCHAR(MAX) |
| Boolean flags | BIT |
| Dates | DATE |
| Timestamps | DATETIME2 |
| Lists of values | NVARCHAR(MAX), values joined with commas |
| Nested records | NVARCHAR(MAX) |
A value missing in the source arrives as NULL, not as zero or an empty string.
Schema changes
Adding or removing a field changes the column list, so the table has to be rebuilt.
After you save a changed field list, the next run drops the table, creates it with the new columns, and reloads the whole period set in Date Range. Data outside that period is gone. Extend Date start before saving if you need the older history back.
Sync strategy
How a table is refreshed depends on the report type of the source.
| Strategy | When Renta uses it | Description |
|---|---|---|
| Full reload | Report types without a date column, and any pipeline with an unpartitioned table | Renta deletes every row and inserts the whole dataset again, so the table matches the source state at run time. |
| Incremental | Report types with a date column and a partitioned table | Renta deletes the rows whose date falls inside the overwrite window and inserts fresh values for those days. Rows older than the window stay untouched. |
Merge mode is not available on SQL Server. It works only on Google BigQuery and ClickHouse, so a source that supports merge sync switches to full reload when it writes into SQL Server.
Troubleshooting
Renta maps known SQL Server responses to the messages below. Both can appear when you save the connection and during a run.
| Message | Cause | What to do |
|---|---|---|
| SQL Server server is unavailable or does not exist. | Renta could not reach the server. The hostname is wrong, the port is closed, or a firewall drops the connection. | Check Server hostname and Port, and allow the Renta IP addresses on the firewall. |
| Server connection failed. Please check your server access credentials, including your username and password. | The server rejected the sign-in. | Retype User and Password, and confirm the account can open the specified database from outside Renta. |
If a run fails with a message that is not in the table, check the run logs on the pipeline page and contact Renta support.
Ready to get started?
Build your data pipeline today or get a personalized demo. Start free!
Need help?
Get expert support to ensure your project succeeds. We're here to help!
Feature requests?
Help shape our product! Share your ideas for new features and integrations.