dotnet add package ClickHouse.Driver
using System;
using System.Threading.Tasks;
using ClickHouse.Driver.ADO;
using ClickHouse.Driver.Utility;
namespace Clickhouse.Test;
class Program
{
static async Task Main(string[] args)
{
using var connection = new ClickHouseConnection("Host=<host>;Protocol=https;Port=8443;Username=default;Password=<password>")
var version = await connection.ExecuteScalarAsync("SELECT version()");
Console.WriteLine(version);
}
}
using ClickHouse.Driver.ADO;
using ClickHouse.Driver.Copy;
using (var connection = new ClickHouseConnection(connectionString))
{
connection.Open();
using var bulkInsert = new ClickHouseBulkCopy(connection)
{
DestinationTableName = "default.my_table",
MaxDegreeOfParallelism = 2,
BatchSize = 100
};
var values = Enumerable.Range(0, 100).Select(i => new object[] { (long)i, "value" + i.ToString() });
await bulkInsert.WriteToServerAsync(values);
Console.WriteLine($"Rows written: {bulkInsert.RowsWritten}");
}