Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time
November 15, 2023 07:17
June 1, 2020 14:13
November 18, 2022 13:22
December 3, 2022 13:24
November 13, 2023 12:51
November 13, 2023 12:51
November 10, 2023 12:39
November 17, 2022 10:11
January 31, 2023 12:17
January 9, 2023 10:13
June 24, 2022 16:32
March 3, 2021 16:34
November 17, 2022 10:02
June 1, 2020 14:13

Issue Status PR Status

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
  • Supports saving DB schema offline, and SQL-Server *.dacpac files

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.


SQLProvider home page contains the core documentation and samples. This documentation originates from docs/content/, so please feel free to submit a pull request if you fix typos or add 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)