Database Provider
PostgreSQL, SQL Server and SQLite configuration
Database Provider (PostgreSQL / SQL Server / SQLite)
uTPro runs on any database engine Umbraco 17 supports. The engine is selected by two keys in appsettings.json: umbracoDbDSN and umbracoDbDSN_ProviderName.
uTPro ships configured for PostgreSQL out of the box. Switching to SQL Server or SQLite requires only changing two keys; no code changes.
| Engine | ProviderName | Extra Package |
|---|---|---|
| PostgreSQL (default) | Npgsql2 | Our.Umbraco.PostgreSql (pre-referenced) |
| SQL Server | Microsoft.Data.SqlClient | none (built-in) |
| SQLite | Microsoft.Data.Sqlite | none (built-in) |
The PostgreSQL provider is registered conditionally in Startup/UmbracoSetup.cs: AddUmbracoPostgreSqlSupport() is only called when the provider name contains "Npgsql". When you switch engines, the call is skipped automatically.
PostgreSQL (default)
Create an empty PostgreSQL database, then set the connection string:
"ConnectionStrings": {
"umbracoDbDSN": "Server=localhost;Port=5432;Database=utpro;Username=postgres;Password=yourpass",
"umbracoDbDSN_ProviderName": "Npgsql2"
}SQL Server
"ConnectionStrings": {
"umbracoDbDSN": "Server=.;Database=utpro;Integrated Security=true;TrustServerCertificate=true",
"umbracoDbDSN_ProviderName": "Microsoft.Data.SqlClient"
}SQLite
"ConnectionStrings": {
"umbracoDbDSN": "Data Source=|DataDirectory|/Umbraco.sqlite.db;Cache=Shared;Foreign Keys=True;Pooling=True",
"umbracoDbDSN_ProviderName": "Microsoft.Data.Sqlite"
}