DubUrl 0.20.15

dotnet add package DubUrl --version 0.20.15                
NuGet\Install-Package DubUrl -Version 0.20.15                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DubUrl" Version="0.20.15" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DubUrl --version 0.20.15                
#r "nuget: DubUrl, 0.20.15"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install DubUrl as a Cake Addin
#addin nuget:?package=DubUrl&version=0.20.15

// Install DubUrl as a Cake Tool
#tool nuget:?package=DubUrl&version=0.20.15                

DubUrl

DubUrl provides a standard, URL style mechanism for parsing database connection strings and opening DbConnections for .NET. With DubUrl, you can parse and open URLs for popular databases such as Microsoft SQL Server, PostgreSQL, MySQL, SQLite3, Oracle Database and most of the other SQL databases. This project is inspired from the package dburl available in the GoLang ecosystem and is trying to match the aliases for portocols.

About | Overview | Quickstart | Examples | Schemes | Installing | Using

About

Social media: website twitter badge

Releases: nuget licence badge

Dev. activity: GitHub last commit Still maintained GitHub commit activity

Continuous integration builds: Build status Tests CodeFactor codecov FOSSA Status

Status: stars badge Bugs badge Top language

Mappers for ADO.Net Provider implemented badge Mappers for ODBC drivers implemented badge Mappers for OLE DB providers implemented badge Mappers for ADOMD.NET providers implemented badge

Upcoming features badge Upcoming databases badge Upcoming ADO.Net badge Upcoming ODBC badge

Database Connection URL Overview

Supported database connection URLs are of the form:

driver:alias://user:pass@host/dbname?opt1=a&opt2=b

Where:

Component Description
alias database type (see below)
driver driver/provider name (only for odbc/oleodbc)
user username
pass password
host host
dbname<sup>*</sup> database, instance, or service name/ID to connect to
?opt1=... additional database driver options (see respective SQL driver for available options)

<i><sup><b>*</b></sup> for Microsoft SQL Server, /dbname can be /instance/dbname, where /instance is optional. For Oracle Database, /dbname is of the form /service/dbname where /service is the service name or SID, and /dbname is optional. Please see below for examples.</i>

Quickstart

Database connection URLs in the above format can be parsed to a standard connection string with the [Parse] as such:

string connectionUrl = "mssql://{server}/{database_name}";
string connectionString = new ConnectionUrl(connectionUrl).Parse();

Additionally, a simple helper, [Open], is provided that will parse, open, and return a standard DbConnection.

string connectionUrl = "mssql://{server}/{database_name}";
IDbConnection connection = new ConnectionUrl(connectionUrl).Open();

If you don't want to open the connection but only return it and manage its state by yourself, use the function [Connect]

string connectionUrl = "mssql://{server}/{database_name}";
IDbConnection connection = new ConnectionUrl(connectionUrl).Connect();

Example URLs

The following are example database connection URLs that can be handled by [Parse], [Connect] and [Open]:

mssql://user:pass@remote-host.com/instance/dbname?keepAlive=10
oledb+mssql://user:pass@localhost/dbname

postgres://user:pass@localhost/dbname
odbc+postgres://user:pass@localhost:port/dbname?option1=

mysql://user:pass@localhost/dbname
oracle://user:pass@somehost.com/sid
db2://user:pass@localhost/dbname

Protocol Schemes and Aliases

ADO.Net data providers

The following databases and their associated schemes are supported out of the box:

Database Aliases Provider Invariant Name
Microsoft SQL Server mssql, ms, sqlserver, mssqlserver Microsoft.Data.SqlClient
MySQL mysql, my MySqlConnector
PostgreSQL pg, pgx, pgsql, postgres, postgresql Npgsql
Oracle Database oracle, or, ora Oracle.ManagedDataAccess
IBM DB2 db2 IBM.Data.Db2
MariaDB maria, mariadb MySqlConnector
DuckDB duck, duckdb DuckDB.NET.Data
Firebird SQL fb, firebird FirebirdSql.Data.FirebirdClient
SQLite3 sq, sqlite Microsoft.Data.Sqlite
Teradata td, teradata, tera Teradata.Client
Snowflake sf, snowflake Snowflake.Data
CockRoachDB cr, cockroach, cockroachdb, crdb, cdb Npgsql
CrateDB crt, crate, cratedb Npgsql
SingleStore sg, sgs, singlestore, single SingleStoreConnector
Trino tr, trino NReco.PrestoAdo
QuestDb quest, questdb Npgsql
Timescale ts, timescale Npgsql

ODBC driver locators

The following databases and their associated schemes are supported out of the box:

Database Aliases Name Pattern
Microsoft SQL Server mssql, ms, sqlserver, mssqlserver ^\bODBC Driver\s([0-9]{1,2}(?:.[0-9]{1,2}){0,2})\s\bfor SQL Server$
MySQL mysql, my ^\bMySQL ODBC\s([0-9]{1,2}(?:.[0-9]{1,2}){0,2})\s(ANSI|Unicode)\s\bDriver$
PostgreSQL pg, pgx, pgsql, postgres, postgresql ^\bPostgreSQL\s(ANSI|Unicode)((x64))?$
MariaDB maria, mariadb ^\bMariaDB ODBC\s([0-9]{1,2}(?:.[0-9]{1,2}){0,2})\s\bDriver$
DuckDB duck, duckdb ^\bDuckDB\s\bDriver$
Apache Drill drill ^\bMapR Drill ODBC Driver$
Trino tr, trino ^(Simba)\s\bTrino ODBC Driver$
Microsoft Access accdb, access, msaccess, mdb ^\bMicrosoft Access Driver\s(*.mdb, *.accdb)$
Microsoft Excel xls, xlsx, xlsb, xlsm ^\bMicrosoft Excel Driver\s(*.xls, *.xlsx, *.xlsm, *.xlsb)$
Text files txt, csv, tsv ^\bMicrosoft Access Text Driver\s(*.txt, *.csv)$
QuestDb quest, questdb ^\bPostgreSQL\s(ANSI|Unicode)((x64))?$
Timescale ts, timescale ^\bPostgreSQL\s(ANSI|Unicode)((x64))?$

Extension for OLEDB provider locators

The following databases and their associated schemes are supported through the OLE DB data provider extension:

Database Aliases Name Pattern
Microsoft SQL Server mssql, ms, sqlserver, mssqlserver ^\bMSOLEDBSQL$
MySQL mysql, my ^\bMySQL Provider$
Microsoft Excel xls ^\bMicrosoft.ACE.OLEDB.([0-9]{1,2}(?:.[0-9]{1,2}){0,2})$
Microsoft Excel xlsx ^\bMicrosoft.ACE.OLEDB.([0-9]{1,2}(?:.[0-9]{1,2}){0,2})$
Microsoft Excel xlsm ^\bMicrosoft.ACE.OLEDB.([0-9]{1,2}(?:.[0-9]{1,2}){0,2})$
Microsoft Excel xlsb ^\bMicrosoft.ACE.OLEDB.([0-9]{1,2}(?:.[0-9]{1,2}){0,2})$
Microsoft Access accdb, access, msaccess, mdb ^\bMicrosoft.ACE.OLEDB.([0-9]{1,2}(?:.[0-9]{1,2}){0,2})$

Extension for ADOMD.NET data provider

The following databases and their associated schemes are supported through the ADOMD.NET data provider extension:

Database Aliases Provider Invariant Name
Azure Analysis Services asazure, asa Microsoft.AnalysisServices.AdomdClient
Power BI Desktop pbidesktop, pbix, powerbidesktop Microsoft.AnalysisServices.AdomdClient
Power BI Premium powerbi, pbi, pbiazure, pbipremium, powerbipremium Microsoft.AnalysisServices.AdomdClient
SQL Server Analysis Services - Multidimensional ssasmultidim, ssasmdx Microsoft.AnalysisServices.AdomdClient
SQL Server Analysis Services - Tabular ssastabular, ssasdax Microsoft.AnalysisServices.AdomdClient

Installing

Install in the usual .NET fashion:

Install-Package DubUrl

To install the extension for OLEDB provider locators

Install-Package DubUrl.OleDb

To install the extension for ADOMD.NET data provider

Install-Package DubUrl.Adomd

Using

Check the first steps guide on the website.

Please note that DubUrl does not install actual drivers, and only provides a standard way to [Parse] respective database connection URLs then [Connect] or [Open] connections.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on DubUrl:

Package Downloads
DubUrl.OleDb

DubUrl provides a standardized URL-style mechanism for providing database connection information and opening a DbConnection in the .NET ecosystem

DubUrl.Extensions.DependencyInjection

DubUrl provides a standardized URL-style mechanism for providing database connection information and opening a DbConnection in the .NET ecosystem

DubUrl.Adomd

DubUrl provides a standardized URL-style mechanism for providing database connection information and opening a DbConnection in the .NET ecosystem

DubUrl.Extensions

DubUrl provides a standardized URL-style mechanism for providing database connection information and opening a DbConnection in the .NET ecosystem

Tseesecake

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
0.20.15 90 1/2/2025
0.20.14 89 1/2/2025
0.20.12 96 12/28/2024
0.20.11 101 12/26/2024
0.20.10 102 12/26/2024
0.20.9 104 12/26/2024
0.20.8 103 12/16/2024
0.20.7 110 12/14/2024
0.20.6 106 12/11/2024
0.20.5 98 12/9/2024
0.20.4 107 12/3/2024
0.20.3 98 12/2/2024
0.20.2 100 12/2/2024
0.20.1 100 12/1/2024
0.20.0 104 12/1/2024
0.19.0 123 11/25/2024
0.18.91 132 11/24/2024
0.18.90 142 11/24/2024
0.18.86 124 11/18/2024
0.18.85 128 11/18/2024
0.18.84 128 11/16/2024
0.18.82 129 11/14/2024
0.18.81 132 11/8/2024
0.18.80 132 11/6/2024
0.18.78 139 10/24/2024
0.18.76 172 10/18/2024
0.18.75 169 10/18/2024
0.18.74 119 10/16/2024
0.18.73 131 10/14/2024
0.18.72 130 10/14/2024
0.18.71 141 10/14/2024
0.18.70 141 10/11/2024
0.18.68 151 9/30/2024
0.18.67 177 9/16/2024
0.18.66 157 9/15/2024
0.18.65 153 9/15/2024
0.18.64 174 9/14/2024
0.18.62 169 9/9/2024
0.18.61 169 9/9/2024
0.18.60 164 9/2/2024
0.18.59 160 9/2/2024
0.18.58 155 9/3/2024
0.18.57 169 8/26/2024
0.18.56 193 8/21/2024
0.18.55 182 8/18/2024
0.18.54 174 8/15/2024
0.18.53 174 8/11/2024
0.18.51 114 7/29/2024
0.18.50 153 7/17/2024
0.18.49 145 7/17/2024
0.18.47 153 7/17/2024
0.18.45 166 7/14/2024
0.18.44 158 7/7/2024
0.18.43 161 7/7/2024
0.18.42 152 7/6/2024
0.18.41 159 7/6/2024
0.18.39 153 7/6/2024
0.18.38 181 7/6/2024
0.18.37 155 6/25/2024
0.18.36 168 6/23/2024
0.18.33 172 5/20/2024
0.18.32 162 5/20/2024
0.18.31 166 5/19/2024
0.18.30 183 5/15/2024
0.18.29 176 5/15/2024
0.18.28 181 5/15/2024
0.18.27 163 5/14/2024
0.18.24 153 5/14/2024
0.18.22 191 4/15/2024
0.18.20 177 4/15/2024
0.18.19 178 4/1/2024
0.18.18 248 3/25/2024
0.18.17 239 3/23/2024
0.18.16 239 3/23/2024
0.18.15 225 3/23/2024
0.18.14 223 3/23/2024
0.18.13 221 3/23/2024
0.18.12 262 3/11/2024
0.18.11 277 3/10/2024
0.18.10 283 3/10/2024
0.18.9 290 2/28/2024
0.18.8 302 2/17/2024
0.18.6 315 2/17/2024
0.18.5 291 2/17/2024
0.18.4 307 2/17/2024
0.18.3 301 2/17/2024
0.18.2 318 2/17/2024
0.18.0 340 2/11/2024
0.17.6 347 2/9/2024
0.17.5 334 2/9/2024
0.17.4 345 2/7/2024
0.17.3 340 2/7/2024
0.17.2 338 2/7/2024
0.17.1 322 1/30/2024
0.17.0 303 1/28/2024
0.16.0 331 1/27/2024
0.15.0 317 1/27/2024
0.14.0 328 1/27/2024
0.13.1 355 1/27/2024
0.13.0 347 1/22/2024
0.12.1 355 1/22/2024
0.12.0 332 1/22/2024
0.11.0 348 1/20/2024
0.10.0 349 1/20/2024
0.9.11 327 1/20/2024
0.9.10 316 1/20/2024
0.9.9 338 1/19/2024
0.9.8 335 1/19/2024
0.9.7 349 1/19/2024
0.9.6 319 1/19/2024
0.9.5 329 1/18/2024
0.9.2 435 1/8/2024
0.9.1 379 1/5/2024
0.9.0 390 12/30/2023
0.8.7 396 12/30/2023
0.8.6 421 12/25/2023
0.8.5 397 12/21/2023
0.8.4 396 12/21/2023
0.8.3 446 12/11/2023
0.8.2 434 12/11/2023
0.8.1 438 12/11/2023
0.8.0 435 12/9/2023
0.7.3 420 12/6/2023
0.7.2 466 12/5/2023
0.7.1 462 11/28/2023
0.7.0 429 11/27/2023
0.6.0 445 11/26/2023
0.5.11 456 11/25/2023
0.5.9 437 11/25/2023
0.5.8 442 11/25/2023
0.5.6 450 11/25/2023
0.5.5 431 11/25/2023
0.5.1 435 11/25/2023
0.5.0 466 11/18/2023
0.4.14 414 11/16/2023
0.4.6 437 11/16/2023
0.4.5 456 11/13/2023
0.4.4 414 11/13/2023
0.4.3 451 11/12/2023
0.4.2 420 11/12/2023
0.4.1 440 11/7/2023
0.4.0 415 11/6/2023
0.3.3 444 11/6/2023
0.3.2 439 11/6/2023
0.3.1 448 11/6/2023
0.3.0 475 10/30/2023
0.2.13 454 10/30/2023
0.2.12 428 10/30/2023
0.2.11 420 10/30/2023
0.2.10 430 10/23/2023
0.2.9 466 10/23/2023
0.2.8 473 10/16/2023
0.2.7 474 10/16/2023
0.2.6 472 10/9/2023
0.2.5 437 10/9/2023
0.2.4 441 10/9/2023
0.2.3 474 10/2/2023
0.2.0 561 9/30/2023
0.1.233 649 9/21/2023
0.1.231 546 9/19/2023
0.1.230 505 9/18/2023
0.1.228 480 9/18/2023
0.1.227 563 9/15/2023
0.1.226 509 9/14/2023
0.1.225 509 9/12/2023
0.1.224 511 9/10/2023
0.1.223 514 9/10/2023
0.1.222 508 9/9/2023
0.1.219 537 9/8/2023
0.1.218 531 9/7/2023
0.1.217 535 9/6/2023
0.1.216 573 8/28/2023
0.1.215 529 8/28/2023
0.1.214 539 8/23/2023
0.1.213 535 8/23/2023
0.1.212 587 8/15/2023
0.1.211 572 8/14/2023
0.1.210 560 8/12/2023
0.1.209 617 8/8/2023
0.1.208 708 8/1/2023
0.1.207 744 7/31/2023
0.1.206 639 7/31/2023
0.1.205 614 7/31/2023
0.1.204 643 7/30/2023
0.1.203 605 7/30/2023
0.1.202 628 7/30/2023
0.1.201 628 7/29/2023
0.1.200 647 7/11/2023
0.1.199 695 7/3/2023
0.1.198 653 7/1/2023
0.1.197 694 6/30/2023
0.1.196 951 6/29/2023
0.1.195 695 6/26/2023
0.1.194 860 6/23/2023
0.1.193 644 6/23/2023
0.1.192 686 6/21/2023
0.1.191 663 6/19/2023
0.1.190 627 6/18/2023
0.1.188 657 6/18/2023
0.1.187 645 6/17/2023
0.1.186 696 6/16/2023
0.1.184 656 6/11/2023
0.1.183 682 6/8/2023
0.1.182 678 5/31/2023
0.1.180 652 5/30/2023
0.1.179 615 5/30/2023
0.1.178 637 5/29/2023
0.1.177 666 5/28/2023
0.1.176 674 5/27/2023
0.1.175 678 5/23/2023
0.1.174 671 5/22/2023
0.1.173 654 5/21/2023
0.1.172 683 5/20/2023
0.1.171 647 5/20/2023
0.1.170 647 5/15/2023
0.1.169 691 5/14/2023
0.1.168 691 5/13/2023
0.1.167 743 5/11/2023
0.1.166 684 5/11/2023
0.1.165 670 5/3/2023
0.1.164 707 4/27/2023
0.1.163 720 4/22/2023
0.1.162 724 4/18/2023
0.1.161 714 4/17/2023
0.1.160 716 4/17/2023
0.1.159 737 4/17/2023
0.1.158 742 4/17/2023
0.1.157 709 4/13/2023
0.1.156 737 4/10/2023
0.1.155 699 4/10/2023
0.1.154 737 4/10/2023
0.1.153 699 4/10/2023
0.1.152 708 4/4/2023
0.1.151 719 4/3/2023
0.1.150 806 3/28/2023
0.1.149 776 3/20/2023
0.1.148 760 3/14/2023
0.1.147 783 3/6/2023
0.1.146 774 3/5/2023
0.1.145 845 3/5/2023
0.1.144 843 3/1/2023
0.1.143 858 1/31/2023
0.1.142 874 1/31/2023
0.1.141 866 1/25/2023
0.1.140 861 1/23/2023
0.1.139 849 1/20/2023
0.1.138 923 1/3/2023
0.1.136 892 1/3/2023
0.1.133 925 12/26/2022
0.1.132 929 12/20/2022
0.1.131 902 12/20/2022
0.1.130 928 12/14/2022
0.1.129 923 11/28/2022
0.1.128 942 11/20/2022
0.1.127 972 11/20/2022
0.1.126 955 11/20/2022
0.1.125 921 11/19/2022
0.1.124 929 11/19/2022
0.1.123 980 11/19/2022
0.1.122 1,009 11/19/2022
0.1.121 989 11/19/2022
0.1.120 931 11/17/2022
0.1.119 946 11/17/2022
0.1.118 961 11/17/2022
0.1.115 954 11/9/2022
0.1.114 967 11/7/2022
0.1.113 925 11/2/2022
0.1.112 982 11/2/2022
0.1.111 967 11/2/2022
0.1.110 1,026 11/1/2022
0.1.109 1,014 11/1/2022
0.1.108 1,046 10/28/2022
0.1.107 1,054 10/28/2022
0.1.106 1,006 10/28/2022
0.1.103 1,061 10/22/2022
0.1.101 1,096 10/17/2022
0.1.100 1,101 10/17/2022
0.1.99 1,055 10/17/2022
0.1.98 1,033 10/17/2022
0.1.97 1,102 10/13/2022
0.1.96 1,088 10/3/2022
0.1.94 1,103 9/26/2022
0.1.93 1,135 9/26/2022
0.1.92 1,090 9/26/2022
0.1.91 1,097 9/24/2022
0.1.90 1,129 9/24/2022
0.1.89 1,068 9/24/2022
0.1.88 1,052 9/21/2022
0.1.87 1,117 9/20/2022
0.1.86 1,158 9/20/2022
0.1.84 1,111 9/15/2022
0.1.83 1,120 9/15/2022
0.1.82 1,111 9/11/2022
0.1.81 1,137 9/10/2022
0.1.80 1,125 9/10/2022
0.1.79 1,134 9/10/2022
0.1.78 1,121 9/10/2022
0.1.77 1,030 9/7/2022
0.1.76 948 9/7/2022
0.1.75 1,013 8/30/2022
0.1.74 988 8/29/2022
0.1.72 993 8/27/2022
0.1.71 817 8/27/2022
0.1.70 857 8/21/2022
0.1.69 789 8/15/2022
0.1.68 887 8/15/2022
0.1.67 841 8/15/2022
0.1.66 869 8/15/2022
0.1.65 840 8/15/2022
0.1.63 807 8/14/2022
0.1.62 822 8/14/2022
0.1.61 768 8/13/2022
0.1.60 873 8/13/2022
0.1.59 879 8/12/2022
0.1.57 801 8/12/2022
0.1.52 849 8/12/2022
0.1.50 823 8/11/2022
0.1.49 881 8/8/2022
0.1.48 844 8/8/2022
0.1.47 790 8/7/2022
0.1.46 854 8/6/2022
0.1.45 854 8/6/2022
0.1.44 847 8/5/2022
0.1.43 884 8/2/2022
0.1.42 848 8/2/2022
0.1.39 901 8/2/2022
0.1.38 872 7/31/2022
0.1.37 880 7/31/2022
0.1.36 883 7/31/2022
0.1.33 873 7/31/2022
0.1.32 873 7/16/2022
0.1.31 828 7/16/2022
0.1.27 899 7/16/2022
0.1.26 887 7/16/2022
0.1.25 866 7/15/2022
0.1.24 891 7/12/2022
0.1.23 836 7/12/2022
0.1.22 894 7/12/2022
0.1.21 866 7/12/2022
0.1.20 815 7/11/2022
0.1.19 910 7/11/2022
0.1.18 899 7/10/2022
0.1.17 879 7/5/2022
0.1.16 849 6/30/2022
0.1.15 847 6/30/2022
0.1.14 924 6/30/2022
0.1.14-beta.IBM-DB2.1 118 6/30/2022
0.1.13 850 6/30/2022
0.1.13-beta.teradata.1 127 6/30/2022
0.1.12 898 6/28/2022
0.1.12-beta.refactor-mapper.1 127 6/28/2022
0.1.11 890 6/28/2022
0.1.10 890 6/28/2022
0.1.10-beta.odbc.8 130 6/28/2022
0.1.10-beta.odbc.7 127 6/28/2022
0.1.10-beta.odbc.4 127 6/26/2022
0.1.9 875 6/25/2022
0.1.9-beta.parse-open-funct... 135 6/25/2022
0.1.8 895 6/18/2022
0.1.7 886 6/18/2022
0.1.7-beta.1 136 6/18/2022
0.1.6 832 6/18/2022
0.1.6-beta.2 140 6/18/2022
0.1.5 854 6/18/2022
0.1.4 925 6/18/2022
0.1.3-beta.7 141 6/18/2022
0.1.3-beta.3 124 6/18/2022
0.1.0 889 6/18/2022
0.1.0-alpha.8 115 6/18/2022
0.1.0-alpha.7 125 6/18/2022
0.1.0-alpha.4 125 6/18/2022