DubUrl.OleDb 0.3.2

There is a newer version of this package available.
See the version list below for details.
dotnet add package DubUrl.OleDb --version 0.3.2                
NuGet\Install-Package DubUrl.OleDb -Version 0.3.2                
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.OleDb" Version="0.3.2" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DubUrl.OleDb --version 0.3.2                
#r "nuget: DubUrl.OleDb, 0.3.2"                
#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.OleDb as a Cake Addin
#addin nuget:?package=DubUrl.OleDb&version=0.3.2

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

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
IBM DB2 db2 IBM.Data.Db2
MariaDB maria, mariadb MySqlConnector
Oracle Database oracle, or, ora Oracle.ManagedDataAccess
DuckDB duck, duckdb DuckDB.NET.Data
Firebird SQL fb, firebird FirebirdSql.Data.FirebirdClient
SQLite3 sq, sqlite Microsoft.Data.Sqlite
CockRoachDB cr, cockroach, cockroachdb, crdb, cdb Npgsql
Snowflake sf, snowflake Snowflake.Data
Teradata td, teradata, tera Teradata.Client
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 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})$

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
Power BI Desktop pbidesktop, pbix, powerbidesktop Microsoft.AnalysisServices.AdomdClient
Power BI Premium powerbi, pbi, pbiazure, pbipremium, powerbipremium 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 net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
0.18.80 34 11/6/2024
0.18.78 73 10/24/2024
0.18.76 116 10/18/2024
0.18.75 113 10/18/2024
0.18.74 63 10/16/2024
0.18.73 81 10/14/2024
0.18.72 74 10/14/2024
0.18.71 82 10/14/2024
0.18.70 81 10/11/2024
0.18.68 91 9/30/2024
0.18.67 114 9/16/2024
0.18.66 115 9/15/2024
0.18.65 92 9/15/2024
0.18.64 104 9/14/2024
0.18.62 106 9/9/2024
0.18.61 93 9/9/2024
0.18.60 94 9/2/2024
0.18.59 88 9/2/2024
0.18.58 89 9/3/2024
0.18.57 92 8/26/2024
0.18.56 114 8/21/2024
0.18.55 117 8/18/2024
0.18.54 106 8/15/2024
0.18.53 106 8/11/2024
0.18.51 85 7/29/2024
0.18.50 91 7/17/2024
0.18.49 80 7/17/2024
0.18.47 94 7/17/2024
0.18.45 82 7/14/2024
0.18.44 97 7/7/2024
0.18.43 86 7/7/2024
0.18.42 96 7/6/2024
0.18.41 92 7/6/2024
0.18.39 101 7/6/2024
0.18.38 100 7/6/2024
0.18.37 93 6/25/2024
0.18.36 98 6/23/2024
0.18.33 92 5/20/2024
0.18.32 92 5/20/2024
0.18.31 89 5/19/2024
0.18.30 148 5/15/2024
0.18.29 92 5/15/2024
0.18.28 105 5/15/2024
0.18.27 89 5/14/2024
0.18.24 80 5/14/2024
0.18.22 117 4/15/2024
0.18.20 101 4/15/2024
0.18.19 106 4/1/2024
0.18.18 114 3/25/2024
0.18.17 106 3/23/2024
0.18.16 103 3/23/2024
0.18.15 122 3/23/2024
0.18.14 99 3/23/2024
0.18.13 111 3/23/2024
0.18.12 104 3/11/2024
0.18.11 115 3/10/2024
0.18.10 114 3/10/2024
0.18.9 116 2/28/2024
0.18.8 111 2/17/2024
0.18.6 99 2/17/2024
0.18.5 90 2/17/2024
0.18.4 108 2/17/2024
0.18.3 114 2/17/2024
0.18.2 102 2/17/2024
0.18.0 121 2/11/2024
0.17.6 107 2/9/2024
0.17.5 108 2/9/2024
0.17.4 106 2/7/2024
0.17.3 127 2/7/2024
0.17.2 90 2/7/2024
0.17.1 115 1/30/2024
0.17.0 111 1/28/2024
0.16.0 102 1/27/2024
0.15.0 98 1/27/2024
0.14.0 99 1/27/2024
0.13.1 99 1/27/2024
0.13.0 113 1/22/2024
0.12.1 98 1/22/2024
0.12.0 100 1/22/2024
0.11.0 119 1/20/2024
0.10.0 99 1/20/2024
0.9.11 97 1/20/2024
0.9.10 93 1/20/2024
0.9.9 106 1/19/2024
0.9.8 104 1/19/2024
0.9.7 109 1/19/2024
0.9.6 112 1/19/2024
0.9.5 107 1/18/2024
0.9.2 140 1/8/2024
0.9.1 135 1/5/2024
0.9.0 128 12/30/2023
0.8.7 130 12/30/2023
0.8.6 144 12/25/2023
0.8.5 136 12/21/2023
0.8.4 121 12/21/2023
0.8.3 143 12/11/2023
0.8.2 140 12/11/2023
0.8.1 133 12/11/2023
0.8.0 139 12/9/2023
0.7.3 138 12/6/2023
0.7.2 143 12/5/2023
0.7.1 152 11/28/2023
0.7.0 136 11/27/2023
0.6.0 133 11/26/2023
0.5.11 132 11/25/2023
0.5.9 134 11/25/2023
0.5.8 139 11/25/2023
0.5.6 143 11/25/2023
0.5.5 129 11/25/2023
0.5.1 142 11/25/2023
0.5.0 146 11/18/2023
0.4.14 131 11/16/2023
0.4.6 131 11/16/2023
0.4.5 132 11/13/2023
0.4.4 123 11/13/2023
0.4.3 133 11/12/2023
0.4.2 136 11/12/2023
0.4.1 132 11/7/2023
0.4.0 116 11/6/2023
0.3.3 138 11/6/2023
0.3.2 115 11/6/2023
0.3.1 136 11/6/2023
0.3.0 130 10/30/2023
0.2.13 134 10/30/2023
0.2.12 140 10/30/2023
0.2.11 130 10/30/2023
0.2.10 143 10/23/2023
0.2.9 137 10/23/2023
0.2.8 155 10/16/2023
0.2.7 156 10/16/2023
0.2.6 148 10/9/2023
0.2.5 146 10/9/2023
0.2.4 156 10/9/2023
0.2.3 151 10/2/2023
0.2.0 146 9/30/2023
0.1.233 140 9/21/2023
0.1.231 132 9/19/2023
0.1.230 134 9/18/2023
0.1.228 138 9/18/2023
0.1.227 145 9/15/2023
0.1.226 149 9/14/2023
0.1.225 142 9/12/2023
0.1.224 165 9/10/2023
0.1.223 169 9/10/2023
0.1.222 174 9/9/2023
0.1.219 158 9/8/2023
0.1.218 153 9/7/2023
0.1.217 168 9/6/2023
0.1.216 184 8/28/2023
0.1.215 180 8/28/2023
0.1.214 166 8/23/2023
0.1.213 154 8/23/2023
0.1.212 170 8/15/2023
0.1.211 170 8/14/2023
0.1.210 173 8/12/2023
0.1.209 167 8/8/2023
0.1.208 170 8/1/2023
0.1.207 164 7/31/2023
0.1.206 168 7/31/2023
0.1.205 159 7/31/2023
0.1.204 175 7/30/2023
0.1.203 155 7/30/2023
0.1.202 170 7/30/2023
0.1.201 168 7/29/2023
0.1.200 181 7/11/2023
0.1.199 179 7/3/2023
0.1.198 196 7/1/2023
0.1.197 183 6/30/2023
0.1.196 172 6/29/2023
0.1.195 169 6/26/2023
0.1.194 196 6/23/2023
0.1.193 186 6/23/2023
0.1.192 176 6/21/2023
0.1.191 185 6/19/2023
0.1.190 191 6/18/2023
0.1.188 185 6/18/2023
0.1.187 181 6/17/2023
0.1.186 171 6/16/2023
0.1.184 210 6/11/2023
0.1.183 179 6/8/2023
0.1.182 198 5/31/2023
0.1.180 173 5/30/2023
0.1.179 167 5/30/2023
0.1.178 166 5/29/2023
0.1.177 183 5/28/2023
0.1.176 183 5/27/2023
0.1.175 178 5/23/2023
0.1.174 172 5/22/2023
0.1.173 200 5/21/2023
0.1.172 188 5/20/2023
0.1.171 178 5/20/2023
0.1.170 187 5/15/2023
0.1.169 191 5/14/2023
0.1.168 189 5/13/2023
0.1.167 183 5/11/2023
0.1.166 195 5/11/2023
0.1.165 182 5/3/2023
0.1.164 212 4/27/2023
0.1.163 220 4/22/2023
0.1.162 198 4/18/2023
0.1.161 213 4/17/2023
0.1.160 224 4/17/2023
0.1.159 211 4/17/2023
0.1.158 208 4/17/2023
0.1.157 227 4/13/2023
0.1.156 228 4/10/2023
0.1.155 228 4/10/2023
0.1.154 208 4/10/2023
0.1.153 224 4/10/2023
0.1.152 250 4/4/2023
0.1.151 220 4/3/2023
0.1.150 257 3/28/2023
0.1.149 257 3/20/2023
0.1.148 238 3/14/2023
0.1.147 267 3/6/2023
0.1.146 258 3/5/2023
0.1.145 270 3/5/2023
0.1.144 284 3/1/2023
0.1.143 304 1/31/2023
0.1.142 291 1/31/2023
0.1.141 304 1/25/2023
0.1.140 321 1/23/2023
0.1.139 311 1/20/2023
0.1.138 339 1/3/2023
0.1.136 324 1/3/2023
0.1.133 355 12/26/2022
0.1.132 318 12/20/2022
0.1.131 346 12/20/2022
0.1.130 334 12/14/2022
0.1.129 356 11/28/2022
0.1.128 375 11/20/2022
0.1.127 374 11/20/2022
0.1.126 353 11/20/2022
0.1.125 352 11/19/2022
0.1.124 380 11/19/2022
0.1.123 385 11/19/2022
0.1.122 355 11/19/2022
0.1.121 362 11/19/2022
0.1.120 368 11/17/2022
0.1.119 379 11/17/2022
0.1.118 375 11/17/2022
0.1.115 351 11/9/2022
0.1.114 380 11/7/2022
0.1.113 394 11/2/2022
0.1.112 382 11/2/2022
0.1.111 404 11/2/2022
0.1.110 383 11/1/2022
0.1.109 387 11/1/2022
0.1.108 412 10/28/2022
0.1.107 378 10/28/2022
0.1.106 402 10/28/2022
0.1.103 446 10/22/2022
0.1.101 423 10/17/2022
0.1.100 421 10/17/2022
0.1.99 462 10/17/2022
0.1.98 444 10/17/2022
0.1.97 457 10/13/2022
0.1.96 433 10/3/2022
0.1.94 437 9/26/2022
0.1.93 446 9/26/2022
0.1.92 462 9/26/2022
0.1.91 479 9/24/2022
0.1.90 469 9/24/2022
0.1.89 473 9/24/2022
0.1.88 440 9/21/2022
0.1.87 442 9/20/2022
0.1.86 462 9/20/2022
0.1.84 480 9/15/2022
0.1.83 459 9/15/2022
0.1.82 470 9/11/2022
0.1.81 463 9/10/2022
0.1.80 447 9/10/2022
0.1.79 477 9/10/2022
0.1.78 460 9/10/2022
0.1.77 461 9/7/2022
0.1.76 444 9/7/2022
0.1.75 471 8/30/2022
0.1.74 448 8/29/2022
0.1.72 435 8/27/2022