CH.Toolkit.Introspection
0.0.1-preview.3
dotnet add package CH.Toolkit.Introspection --version 0.0.1-preview.3
NuGet\Install-Package CH.Toolkit.Introspection -Version 0.0.1-preview.3
<PackageReference Include="CH.Toolkit.Introspection" Version="0.0.1-preview.3" />
<PackageVersion Include="CH.Toolkit.Introspection" Version="0.0.1-preview.3" />
<PackageReference Include="CH.Toolkit.Introspection" />
paket add CH.Toolkit.Introspection --version 0.0.1-preview.3
#r "nuget: CH.Toolkit.Introspection, 0.0.1-preview.3"
#:package CH.Toolkit.Introspection@0.0.1-preview.3
#addin nuget:?package=CH.Toolkit.Introspection&version=0.0.1-preview.3&prerelease
#tool nuget:?package=CH.Toolkit.Introspection&version=0.0.1-preview.3&prerelease
CH.Toolkit.Introspection
Schema introspection -- reads existing table, column, engine, index, projection, materialized view, and dictionary definitions from a live ClickHouse database.
Key Types
SchemaIntrospector-- connects to ClickHouse viaDbConnectionand returns aDatabaseSchemaby queryingsystem.tables,system.columns,system.data_skipping_indices,system.projections, andsystem.dictionariesCreateTableParser-- parsesCREATE TABLEDDL strings to extract engine settings, TTL clauses, and materialized view structure
Dependencies
Schema, Types, Sql, ClickHouse.Driver
Usage
using ClickHouse.Driver;
using CH.Toolkit.Introspection;
await using var connection = new ClickHouseConnection("Host=localhost;Port=9000");
var introspector = new SchemaIntrospector(connection);
// Introspect all tables in a database
DatabaseSchema schema = await introspector.IntrospectAsync("analytics");
// Introspect specific tables only
DatabaseSchema partial = await introspector.IntrospectAsync(
"analytics", new[] { "event", "user" });
The returned DatabaseSchema is the same record type used by the Modeling
and Migrations packages, so introspected schemas can be directly diffed
against builder-defined schemas to generate migrations.
See the root README for full documentation.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- CH.Toolkit.Schema (>= 0.0.1-preview.3)
- CH.Toolkit.Sql (>= 0.0.1-preview.3)
- CH.Toolkit.Types (>= 0.0.1-preview.3)
- ClickHouse.Driver (>= 1.0.0)
-
net8.0
- CH.Toolkit.Schema (>= 0.0.1-preview.3)
- CH.Toolkit.Sql (>= 0.0.1-preview.3)
- CH.Toolkit.Types (>= 0.0.1-preview.3)
- ClickHouse.Driver (>= 1.0.0)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on CH.Toolkit.Introspection:
| Package | Downloads |
|---|---|
|
CH.Toolkit
ClickHouse schema modeling, migrations, and query building for .NET. Meta-package that includes Types, Sql, Schema, Modeling, Query, Introspection, and Migrations. |
|
|
CH.Toolkit.Migrations
ClickHouse migration system with schema diffing, C# code generation, and a migration runner with distributed locking, checksum validation, and safety policies. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.0.1-preview.3 | 87 | 2/23/2026 |
| 0.0.1-preview.2 | 63 | 2/23/2026 |
| 0.0.1-preview.1 | 68 | 2/23/2026 |