A general F# SQL database erasing type provider, supporting LINQ queries, schema exploration, individuals, CRUD operations and much more besides.
Clone or download
Latest commit 474cdef Dec 13, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Update ISSUE_TEMPLATE.md Oct 9, 2016
.paket Add Name mapping to SQLEntity.MapTo Jun 23, 2018
docs Merge pull request #560 from piaste/fix_context_schema_path Aug 28, 2018
src 1.1.54 Dec 13, 2018
tests alias resolving fixed on async aggregate operations in multi-table qu… Nov 30, 2018
.gitattributes use right line endings for build.sh Jul 18, 2014
.gitignore - Manual instantiation of SHA providers for FIPS compliance Dec 13, 2018
.travis.yml Use creatuser directly in the loop Jan 31, 2018
LICENSE.txt Merged Convert to paket latest Project scaffold Mar 26, 2015
README.md Update README.md Oct 25, 2017
RELEASE_NOTES.md 1.1.54 Dec 13, 2018
SQLProvider.Core.sln Modifications for .NET Standard. The previous branch is not used anym… Sep 22, 2017
SQLProvider.Tests.sln added (date1column.Subtract(date2column).Days) and (date1column.Subtr… Feb 10, 2018
SQLProvider.nuspec 1.1.16 Fix for #465: Excluded FSharp.Core dll from package Oct 25, 2017
SQLProvider.sln Documentation: Best practices working with queries Jul 21, 2017
appveyor.yml poweshell Jun 27, 2018
build.cmd Merged Convert to paket latest Project scaffold Mar 26, 2015
build.fsx sdk copy update Aug 24, 2018
build.sh Merged Convert to paket latest Project scaffold Mar 26, 2015
mysql.fsx Added an example of creating the SQLProvider for MySQL. Aug 3, 2015
paket.dependencies Update for #532 Apr 16, 2018
paket.lock SDK update, added some tests Sep 5, 2018


Issue Stats Issue Stats

SQLProvider NuGet Status

Join the chat at https://gitter.im/fsprojects/SQLProvider

A general .NET/Mono SQL database type provider. Current features :

  • LINQ queries
  • Lazy schema exploration
  • Automatic constraint navigation
  • Individuals
  • Transactional CRUD operations with identity support
  • Two-way data binding
  • Stored Procedures
  • Functions
  • Packages (Oracle)
  • Composable Query integration
  • Optional option types
  • Mapping to record types
  • Custom Operators
  • Supports Asynchronous Operations
  • Supports .NET Standard / .NET Core

The provider currently has explicit implementations for the following database vendors :

  • SQL Server
  • SQLite
  • PostgreSQL
  • Oracle
  • MySQL (& MariaDB)
  • MsAccess
  • Firebird

There is also an ODBC provider that will let you connect to any ODBC source with limited features.


Core documentation and samples can be found at the SQLProvider home page. This documentation is generated from docs/content/, so please feel free to submit a pull request if you have fixed typos are added additional samples and documentation!


  • Mono: Run build.sh Mono build status
  • Windows: Run build.cmd Build status

Known issues

  • Database vendors other than SQL Server and Access use dynamic assembly loading. This may cause some security problems depending on your system's configuration and which version of the .NET framework you are using. If you encounter problems loading dynamic assemblies, they can likely be resolved by applying the following element into the configuration files of fsi.exe, devenv.exe and your program or the program using your library : http://msdn.microsoft.com/en-us/library/dd409252(VS.100).aspx


The default maintainer account for projects under "fsprojects" is @fsprojectsgit - F# Community Project Incubation Space (repo management)