Generate SQL and notebooks
Supported database targets
Every schema targets one SQL dialect. The dialect decides what Kenseme generates: SQL files with stored procedures for six targets, and PySpark notebooks for Databricks and Fabric Lakehouse.
The eight targets¶
The first column is the name as it appears in the Default Database Dialect dropdown.
| Dropdown name | Platform | Whole-schema output | Load logic | Notes |
|---|---|---|---|---|
Sql Server |
Microsoft SQL Server and Azure SQL | .sql |
T-SQL stored procedures | The most complete target. |
Fabric Warehouse |
Microsoft Fabric Warehouse | .sql |
T-SQL stored procedures | No indexes or column defaults; primary keys are NOT ENFORCED. |
Postgres |
PostgreSQL | .sql |
Procedures | Native enum types. |
MySql |
MySQL | .sql |
Procedures | No MERGE. |
Redshift |
Amazon Redshift | .sql |
Procedures | No indexes. |
Snowflake |
Snowflake | .sql |
Procedures | No indexes. |
Databricks |
Databricks (Delta Lake) | .ipynb |
Python functions in a notebook | Recalc views become materialized views. |
Fabric Lakehouse |
Microsoft Fabric Lakehouse (Delta Lake) | .ipynb |
Python functions in a notebook | No primary or foreign keys; no stored procedures. |
For the detail behind each note, see Dialect-specific output notes. For what the notebooks contain, see PySpark notebooks.
Choose a schema’s dialect¶
In the app: Data Model › Schemas › your schema › Settings tab › Default Database Dialect
- You pick a dialect when you create a schema. You can change it later in
Default Database Dialecton theSettingstab. The change saves straight away, and a toast confirmsDefault dialect updated to <dialect>. - The schema’s dialect badge shows next to its name on the schema page.
- Changing the dialect doesn’t convert anything. Tables are generated from their column definitions in any dialect. Views, procedures, and functions need a script written in the new dialect, or they are skipped. The
Create Versiondialog warns you about objects with no script in the default dialect. - To produce a copy of a schema in another dialect, duplicate it into that dialect. See Create a schema.
Dialect support by feature¶
| Feature | Targets |
|---|---|
| Version scripts, migration scripts, table SQL | All eight |
| Pipelines | Generate for the destination schema’s dialect. Databricks and Fabric Lakehouse get Python load functions instead of procedures. |
| Star schema plans | SQL Server, PostgreSQL, Databricks, Snowflake, Fabric Warehouse (chosen as the plan’s Target Platform) |
Spark Schemas notebook |
Databricks and Fabric Lakehouse versions; any table through Spark Schema on its SQL tab |
Save to Fabric |
Fabric Lakehouse |
Fabric Warehouse and Fabric Lakehouse as connections¶
The eight dialects above are what a schema generates for. Fabric Warehouse and Fabric Lakehouse also work as saved database connections: you point Kenseme at a live Warehouse or Lakehouse in your own Microsoft Fabric tenant.
You don’t type a server address or connection string for these. Kenseme reads your tenant and lets you pick the workspace and item from a list. Once saved, the connection works like any other: you can import its structure into a schema or bind ontology entities to its tables and columns. See Fabric database connections.