Skip to content

A general F# SQL database erasing type provider, supporting LINQ queries, schema exploration, individuals, CRUD operations and much more besides.

License

Notifications You must be signed in to change notification settings

jimfoye/SQLProvider

This branch is 89 commits behind fsprojects/SQLProvider:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

1fe76d3 · Aug 6, 2024
Aug 6, 2024
Jun 1, 2020
Nov 18, 2022
Jun 5, 2024
Jul 8, 2024
Aug 6, 2024
Aug 6, 2024
Apr 9, 2019
Jul 18, 2014
Nov 18, 2022
Nov 17, 2022
Nov 18, 2022
Mar 26, 2015
May 25, 2024
Mar 27, 2024
Jan 12, 2021
Jun 24, 2022
Mar 3, 2021
Aug 6, 2024
Jan 12, 2021
Mar 7, 2021
Oct 7, 2023
Nov 17, 2022
Jun 1, 2020
Aug 6, 2024
Aug 6, 2024

Repository files navigation

Issue Status PR Status

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
  • 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
  • DuckDB

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

Documentation

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!

Building

  • 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

Example

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

Maintainer(s)

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

About

A general F# SQL database erasing type provider, supporting LINQ queries, schema exploration, individuals, CRUD operations and much more besides.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • F# 93.1%
  • TSQL 6.7%
  • Other 0.2%