Skip to content
A general F# SQL database erasing type provider, supporting LINQ queries, schema exploration, individuals, CRUD operations and much more besides.
F# PLSQL PLpgSQL TSQL Shell Batchfile
Branch: master
Clone or download
Latest commit e7f9ce4 Feb 11, 2020
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Update Oct 9, 2016
.paket .NET Core packages update Feb 4, 2020
docs Corrects documentation by fixing broken hyperlink to MySQL connection… Jan 16, 2020
src 1.1.83 Feb 11, 2020
tests another way of async error handling Feb 5, 2020
.editorconfig reverted back the previous .net standard library. Apr 9, 2019
.gitattributes use right line endings for Jul 18, 2014
.gitignore - Manual instantiation of SHA providers for FIPS compliance Dec 13, 2018
.travis.yml mono version for travis May 29, 2019 Create Apr 4, 2016
LICENSE.txt Merged Convert to paket latest Project scaffold Mar 26, 2015 added sample gif to documentation Feb 26, 2019 1.1.83 Feb 11, 2020
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 minor updates & test to build with Mar 20, 2019
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 MS Access packaging fix Feb 10, 2020 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 .NET Core packages update Feb 4, 2020
paket.lock .NET Core packages update Feb 4, 2020

Issue Stats Issue Stats

SQLProvider NuGet Status

Join the chat at

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 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 :


No OR-mapping: FSharp compiles your database to .NET-types.


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

You can’t perform that action at this time.