Azure SQL 徽标

托管 SQL Server speaks Microsoft SQL Server

Connect Azure SQL to Excel, Sheets and AI

Azure SQL Database or SQL Managed Instance. Same SQL Server dialect, branded so you pick the service you actually pay for.

1connection
0inbound ports
只读enforced

One connection, every surface

Where your Azure SQL data can go

Connect Azure SQL once and the same read-only connection feeds all of these — no second setup, no second copy of the data. 9 of 11 have a step-by-step guide.

指导

Azure SQL to Excel

Microsoft Excel · Excel add-in

Pull live Azure SQL results straight into a worksheet and refresh them on demand — desktop Excel, Excel Online, Microsoft 365.

Read the Microsoft SQL Server guide
指导

Azure SQL to Google Sheets

Sheets add-on

Run a saved Azure SQL query from the sidebar and drop the rows into the sheet. Shared collaborators can refresh it themselves.

Read the Microsoft SQL Server guide
指导

Azure SQL MCP server

Claude, Cursor and MCP clients

Give an AI assistant read-only access to Azure SQL with the schema it needs to write correct SQL — no credentials in the chat.

Read the Microsoft SQL Server guide
指导

Azure SQL REST API

HTTP endpoint

Publish a Azure SQL query as an authenticated JSON endpoint any application can call, with an OpenAPI 3.1 spec and ready-made Postman, Insomnia and Hoppscotch collections. No database port is opened.

Read the Microsoft SQL Server guide
指导

Azure SQL to Airtable

Automation platform

Sync Azure SQL rows into an Airtable base on a schedule, or fetch them inside an Airtable automation script.

Read the Microsoft SQL Server guide
指导

Azure SQL to SeaTable

Automation platform

Keep a SeaTable base current with Azure SQL data without exporting a file or exposing the database.

Read the Microsoft SQL Server guide
指导

Azure SQL to Smartsheet

Automation platform

Push Azure SQL results into a Smartsheet grid so plans and reports read from the source system, not last week's export.

Read the Microsoft SQL Server guide
指导

Azure SQL to Anvil

Anvil Works · App platform

Back an Anvil Python app with Azure SQL through the REST endpoint instead of embedding database credentials in the app.

Read the Microsoft SQL Server guide
支持

Azure SQL to Power BI

Power Query M

Paste the generated Power Query M into the Power BI Advanced Editor and the report reads live Azure SQL results over HTTPS — no ODBC driver, no database port opened.

How Power BI works no Azure SQL walkthrough written yet
支持

Azure SQL alerts and reports

Slack · Discord · Email · Webhook

Put a Azure SQL query on a schedule and have the rows delivered to Slack, Discord, email or a signed webhook — or hold the message until a row count, threshold or percentage change crosses the line you set.

How alerts and reports work no Azure SQL walkthrough written yet

工作原理

5 steps, no inbound firewall change

01

Install the Network Agent on a VM inside the VNet and reach the database over a private endpoint. The agent only connects outward, so no inbound rule and no public endpoint are needed.

02

Give it the server name from the Azure portal — <name>.database.windows.net. Port 1433 is assumed and left out unless you changed it.

03

Use a SQL login with SELECT on what you want read. SQL authentication is the supported model here.

04

Let it read the schema. Tables, columns, types and keys are catalogued so the Query Builder and Nova know the shape before anyone writes T-SQL.

05

Save, and Microsoft Excel, Google Sheets, Power BI, MCP and REST all read that database through the one connection — or join it to your other sources in a single statement.

Feature deep-dive

What Azure SQL gives you

What Azure sees when the agent connects

Azure SQL is a shared service with opinions about who may talk to it, so it is worth being precise about what arrives.

  • Reachability is tested over TCP before any login is attempted, so a wrong server name or a blocked path fails as a network problem rather than arriving at Azure as a failed login.
  • Connection pooling is off. No idle sessions accumulate against your database between queries — which on a serverless tier is the difference between staying paused and being held awake.
  • The Azure firewall's own refusal is recognised for what it is, so a server that has not been told about your address reports a network block rather than a generic failure.
  • Every connection to Azure SQL is encrypted, because Azure requires TLS and refuses anything less. That guarantee is Azure's rather than something the agent negotiates on its behalf.

Serverless, and the first query after a pause

This is the one rough edge worth knowing about before you meet it, because the symptom looks like a broken connection and is not.

  • A serverless database auto-pauses when idle, and waking it takes time the connection attempt has to sit through.
  • The agent waits 30 seconds to connect and 35 seconds for a query to begin returning. A cold wake can exceed that.
  • There is no automatic retry, so the honest description is that the first query after a long pause may time out and want running a second time. Everything after it is normal.
  • A paused database is recognised as paused rather than reported as missing, so the message tells you what actually happened.

It is SQL Server, with two Azure-shaped caveats

The dialect, the types and the schema layout are the same as any other SQL Server, which is the point of using it. Two things differ.

  • The default schema is dbo, and that is what a cross-source reference carries — azure_sql.dbo.orders.
  • Windows and Microsoft Entra authentication are not supported; a SQL login is what the agent presents.
  • Azure SQL Database has no cross-database T-SQL of its own, so the offer to query a second database on the same connection is withheld for these hosts. It does not affect cross-source queries at all — those are assembled by Query Streams across separate connections, so joining an Azure SQL database to anything else works normally.
  • Managed Instance shares the same hostname suffix and is connected to the same way; there is no separate card and no Managed-Instance-only behaviour.
-- Ordinary T-SQL, read-only, against the managed service
SELECT   TOP (50)
         c.Name,
         COUNT(o.OrderId)  AS Orders,
         SUM(o.Amount)     AS Revenue
FROM     dbo.Customers AS c
JOIN     dbo.Orders    AS o ON o.CustomerId = c.CustomerId
WHERE    o.PlacedAt >= DATEADD(day, -30, SYSUTCDATETIME())
GROUP BY c.Name
ORDER BY Revenue DESC;

Shared by every database connector

True of every database connector

  • 仅限出站 — the agent opens one encrypted connection out to Query Streams. No inbound port to forward, no VPN, no IP allowlist, nothing about your database exposed to the internet.
  • Credentials stay put — the database username and password live on the machine you installed the agent on. Query Streams never receives them and cannot reach your database on its own.
  • 只读,强制执行 — one statement at a time, SELECT and friends only. A write is rejected on your own machine before it is ever sent to the server, rather than relying on a permission somebody remembered to set.
  • Deploy as many agents as you like — one per site, region or cloud. Every data source they can see arrives in a single dropdown, so nobody has to know which agent hosts what.

What you get once a query is saved

  • Share the capability, not the SQL — a colleague or an outside partner can run your query and change its filters without ever seeing the statement behind it.
  • Filters from either direction — declare them yourself as @variables, or let the connector spot the literal values already sitting in your WHERE clause and offer those as dropdowns.
  • Read it from anywhere — Microsoft Excel, Google Sheets, Power BI, the REST API, AI assistants over MCP, the Query Builder and Nova all read the same saved query.
  • Run several at once — five saved queries into five worksheet tabs, streamed concurrently, however large the results.
  • Join it to anything else you have connected — another database, a business API, or a folder of files, in one read-only statement.

Cross-source SQL

Join Azure SQL to the rest of your data

One statement can span Azure SQL and your other connections at once. Each source runs only the part it can, streams the result back, and the join happens centrally — the sources never talk to each other and nothing is copied anywhere.

3 connections · 3 agents

Azure SQL 托管 SQL Server
PostgreSQL 关系引擎
条纹 付款与账单

One statement

-- nothing copied, nothing merged, nothing scheduled
选择   c.region, COUNT(*) AS orders, SUM(i.amount_due) AS invoiced
     azure_sql.dbo.orders1    f
连接     pg_crm.public.customers2 c ON c.id = f.customer_id
连接     计费.stripe.invoices3 i ON i.customer = c.stripe_id
GROUP BY c.region
ORDER BY invoiced DESC;

The three parts are connection, schema and table — and the connection name is whatever you called it. Illustrative columns; your tables will be your tables. Read-only applies to every piece: SELECT, WITH and EXPLAIN only, with a ceiling on how much any one source may hand over for a single query. 联合查询的工作原理

Connection details

What Azure SQL needs

Host
<server>.database.windows.net — the same suffix for Azure SQL Database and SQL Managed Instance
Default port
1433, and left out of the connection string when it is the default
Driver
Microsoft.Data.SqlClient 6.0.1
Authentication
SQL authentication. Microsoft Entra ID, managed identity and Windows authentication are not supported
加密
Azure mandates TLS and refuses unencrypted connections, so traffic is encrypted; the agent does not verify the certificate chain
Pooling
Off, deliberately — nothing idles against the database between queries
Timeouts
5 seconds for the TCP reachability check, 30 seconds to connect, 35 seconds for a query to begin returning
Serverless
A cold wake can outlast the connect timeout; there is no automatic retry, so the first query after a long pause may need running twice
Permissions
A SQL login with SELECT on what you want read
Default schema
dbo, which is what a federated reference carries

The security story here is the same one that makes the on-premises SQL Server connector worth having, moved to Azure. The agent sits inside your VNet and opens one connection outward, so the database keeps public network access switched off, keeps its firewall empty of office addresses that change, and never has anything listening for you. Nothing is copied out and nothing is scheduled — a query runs when somebody asks for it.

Serverless is called out deliberately rather than glossed over. Auto-pause is a cost feature people choose on purpose, and the honest consequence is that the first query after a quiet spell can exceed a 30-second connect timeout with no retry behind it. Knowing that in advance turns a mysterious failure into an expected one; pooling being off also means Query Streams is not the thing keeping a paused database awake and billable.

Azure SQL Database cannot join across its own databases in T-SQL, which is a limitation of the service rather than of this connector. Cross-source queries in Query Streams are assembled across separate connections, so an Azure SQL database joins to a Postgres application database, a folder of CSVs or a billing API in one read-only statement regardless — written azure_sql.dbo.orders, because dbo is what SQL Server carries.

Vendor documentation: azure.microsoft.com

FAQ

Questions about Azure SQL

Which tools can read Azure SQL data through Query Streams?

All of them, from one connection: Excel, Google Sheets, MCP, REST API, Airtable, Baserow, SeaTable, Smartsheet, Anvil, Power BI, scheduled alerts and reports. Connect the database once and every surface reads the same read-only connection — there is no per-tool setup and no second copy of the data.

Do I have to open a firewall port to my Azure SQL database?

No. The Query Streams Network Agent runs inside your network and opens a single outbound encrypted connection. Nothing listens for inbound traffic, no VPN is required, and the database keeps its existing firewall rules.

Can Query Streams change data in Azure SQL?

No. The agent enforces read-only at the point of execution — one statement at a time, SELECT and friends only. Credentials stay on the agent and are never sent to Query Streams.

What does Query Streams need to connect to Azure SQL?

A reachable host, a role and its password — the agent carries the driver, so nothing is installed on the database. Host: <server>.database.windows.net — the same suffix for Azure SQL Database and SQL Managed Instance. Default port: 1433, and left out of the connection string when it is the default. Driver: Microsoft.Data.SqlClient 6.0.1. Authentication: SQL authentication. Microsoft Entra ID, managed identity and Windows authentication are not supported.

Can I join Azure SQL to another database in the same query?

Yes — that is a federated query. One statement can reference Azure SQL and your other connections at once, written as connection.schema.table. Each source runs only the part it can and streams the result back; the join happens centrally, so the sources never connect to each other and nothing is copied or scheduled. Read-only applies to every piece — SELECT, WITH and EXPLAIN only — and there is a ceiling on how much any one source may hand over for a single query. Federated queries are a plan feature; the federated queries page carries the current source and size limits.

Is connecting Azure SQL different from connecting Microsoft SQL Server?

Only the connection string. Azure SQL speaks the Microsoft SQL Server wire protocol, so filters, scheduling, sharing, the Excel and Google Sheets add-ons and the MCP server all behave identically. The Azure SQL card pre-fills the host, port and SSL settings that provider expects.

Is there a Azure SQL to Excel guide?

Yes — it is the Microsoft SQL Server guide, and it is correct for Azure SQL as written. Azure SQL speaks the Microsoft SQL Server wire protocol, so Azure SQL to Excel, Azure SQL to Google Sheets and every other destination follow the same steps. The only Azure SQL-specific part is the connection string, and the Azure SQL card fills that in for you.

Put Azure SQL where the work happens

Install the agent, point it at your database, and pick a destination.

只读 仅限出站 Credentials stay on the agent