DuckDB.NET.Data.Full 1.1.2-alpha.5
DuckDB.NET
DuckDB bindings for C#

Usage
dotnet add package DuckDB.NET.Data.Full
using (var duckDBConnection = new DuckDBConnection("Data Source=file.db"))
{
duckDBConnection.Open();
using var command = duckDBConnection.CreateCommand();
command.CommandText = "CREATE TABLE integers(foo INTEGER, bar INTEGER);";
var executeNonQuery = command.ExecuteNonQuery();
command.CommandText = "INSERT INTO integers VALUES (3, 4), (5, 6), (7, 8);";
executeNonQuery = command.ExecuteNonQuery();
command.CommandText = "Select count(*) from integers";
var executeScalar = command.ExecuteScalar();
command.CommandText = "SELECT foo, bar FROM integers";
var reader = command.ExecuteReader();
PrintQueryResults(reader);
}
private static void PrintQueryResults(DbDataReader queryResult)
{
for (var index = 0; index < queryResult.FieldCount; index++)
{
var column = queryResult.GetName(index);
Console.Write($"{column} ");
}
Console.WriteLine();
while (queryResult.Read())
{
for (int ordinal = 0; ordinal < queryResult.FieldCount; ordinal++)
{
var val = queryResult.GetInt32(ordinal);
Console.Write(val);
Console.Write(" ");
}
Console.WriteLine();
}
}
Known Issues
When debugging your project that uses DuckDB.NET library, you may get the following error: System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt. The error happens due to debugger interaction with the native memory. For a workaround check out Debugger Options mess up debugging session during Marshalling
Documentation
Documentation is available at https://duckdb.net
Support
If you encounter a bug with the library Create an Issue. Join the DuckDB dotnet channel for DuckDB.NET-related topics.
Contributors
Sponsors
A big thanks to DuckDB Labs and AWS Open Source Software Fund for sponsoring the project!
Showing the top 20 packages that depend on DuckDB.NET.Data.Full.
| Packages | Downloads |
|---|---|
|
Microsoft.SemanticKernel.Connectors.DuckDB
DuckDB connector for Semantic Kernel plugins and semantic memory
|
6 |
|
Microsoft.SemanticKernel.Connectors.DuckDB
DuckDB connector for Semantic Kernel plugins and semantic memory
|
5 |
|
Microsoft.SemanticKernel.Connectors.DuckDB
DuckDB connector for Semantic Kernel plugins and semantic memory
|
4 |
Added support for creating user-defined scalar functions.
Added support for Varint type.
Added support for writing to Enum columns when using managed Appender.
Updated to DuckDB v1.1.1
.NET 6.0
- DuckDB.NET.Bindings.Full (>= 1.1.2-alpha.5)
.NET 8.0
- DuckDB.NET.Bindings.Full (>= 1.1.2-alpha.5)
.NET Standard 2.0
- DuckDB.NET.Bindings.Full (>= 1.1.2-alpha.5)
- System.Memory (>= 4.5.5)
- System.Runtime.CompilerServices.Unsafe (>= 6.0.0)
| Version | Downloads | Last updated |
|---|---|---|
| 1.3.2 | 8 | 07/19/2025 |
| 1.3.0 | 6 | 07/21/2025 |
| 1.2.1 | 5 | 08/10/2025 |
| 1.2.1-alpha.8 | 5 | 08/10/2025 |
| 1.2.0 | 5 | 08/10/2025 |
| 1.1.3 | 5 | 08/10/2025 |
| 1.1.2.1 | 5 | 08/10/2025 |
| 1.1.2-alpha.5 | 5 | 08/10/2025 |
| 1.1.1 | 5 | 08/10/2025 |
| 1.1.0.1 | 5 | 08/10/2025 |
| 1.0.2 | 5 | 08/10/2025 |
| 1.0.1 | 5 | 08/10/2025 |
| 1.0.0 | 5 | 08/10/2025 |
| 0.10.3 | 5 | 08/10/2025 |
| 0.10.2 | 7 | 07/09/2025 |
| 0.10.1.2 | 5 | 08/10/2025 |
| 0.10.1 | 5 | 08/10/2025 |
| 0.9.2 | 5 | 08/10/2025 |
| 0.9.1 | 5 | 08/10/2025 |
| 0.9.0.3 | 5 | 08/10/2025 |
| 0.9.0 | 5 | 08/10/2025 |
| 0.8.1 | 5 | 08/10/2025 |
| 0.8.0 | 5 | 08/10/2025 |
| 0.7.1 | 5 | 08/10/2025 |
| 0.6.1 | 5 | 08/10/2025 |

