Plain-English reporting · governed by design

Ask your database in plain English. Get the answer — not the risk.

SQLProAI turns a question typed in plain English into read-only SQL against your own database. You decide which tables are askable; secrets and PII are hard-denied; every query is bounded before it runs. Ask, refine, and share the result.

Read-only, always Your data stays in your database No SQL required
sqlpro · report ● read-only
You ask
-- generated & validated before it runs SELECT region, SUM(amount) AS revenue FROM orders WHERE created_at >= '2026-04-01' GROUP BY region ORDER BY revenue DESC LIMIT 10;
✓ SELECT only ✓ allow-listed tables LIMIT applied scan cost checked
regionrevenue
West$412,800
Northeast$388,140
South$301,560
Midwest$264,900
The reporting gap

Every answer is either slow, rigid, or dangerous.

The number you need is sitting in the database. Getting it out shouldn't mean filing a ticket, wrestling a dashboard that was built for last quarter's question, or handing someone raw query access.

Waiting on an analyst

Ad-hoc questions queue behind a person who has to write the SQL. A ten-second answer takes two days — so most questions never get asked.

Dashboards that don't bend

BI tools answer the questions someone anticipated. The moment you want to slice it a new way, you're back in the queue or exporting to a spreadsheet.

Raw access is a liability

Handing a chatbot — or a person — a live connection can leak PII, expose secrets, or drop a query that scans your whole warehouse. Convenience shouldn't cost you control.

How it works

Point it at your database. Keep the guardrails you set.

You stay in control at every step. SQLProAI connects with read-only credentials, learns only the tables you expose, and never writes anything back.

Connect

Add a data source with read-only credentials. SQLProAI introspects the schema — tables, columns, and how they relate — so it knows the shape of your data.

Curate & expose

Choose what's askable. AI suggests plain-English descriptions; you approve the tables and columns to expose. Secrets and PII stay hard-denied even if you forget.

Ask

Type the question the way you'd say it. It becomes SQL, gets validated, and runs read-only. Not quite right? Refine in plain English — "now only last month."

Deliver

See the result as a clean table, with the exact SQL shown for anyone who wants it. Share it as a link — the answer, reproducible, without re-running the ask.

Governed by design

The guardrails aren't a setting. They're the architecture.

Safety isn't a checkbox you can forget to tick. Every query passes the same gauntlet before a single row is read — and there's no path around it.

🔒

Read-only, enforced twice

Queries are validated to be plain SELECTs, then executed on a read-only connection. Nothing can write, alter, or delete — by construction, not by policy.

You expose only what's safe

Nothing is askable until you allow-list it. A question can only touch the tables and columns you've deliberately exposed.

Secrets & PII hard-denied

Password hashes, tokens, and sensitive fields are blocked at a layer that overrides exposure — so an over-eager question can never surface them.

Every query is bounded

An automatic row limit, a cap on joins, and a scan-cost estimate stop a runaway query before it runs — no accidental full-warehouse scans.

🏠

Your data stays put

Queries run against your database and return only the preview rows. Your tables aren't copied, mirrored, or shipped anywhere.

📊

Every ask is accounted for

Each question is metered per workspace, so usage and cost are always visible — no surprise bills, no black box.

What you can ask

Real questions, answered the way you'd phrase them.

No column names, no joins to remember. Ask like you'd ask a colleague who happens to know the schema cold.

Top 10 customers by revenue this quarter
→ ranks accounts by SUM(amount), quarter-to-date, limited to 10
Refunds by region over the last 30 days, week over week
→ groups by region & week, read-only, bounded to the window you named
Which SKUs haven't sold since March?
→ finds products with no orders after a date, no SQL to write
Average time from signup to first order, by plan
→ joins the exposed tables for you; secrets stay out of reach
Works with your stack

Bring the database you already have.

PostgreSQL MySQL SQL Server Snowflake

Connect with a read-only role — ideally a read replica. SQLProAI never needs write access.

Get started

Point it at your database. Ask your first question.

Connect a source, expose the tables you trust, and start asking in plain English — with the guardrails already on.