JustyBase.Netezza 0.8.4

There is a newer version of this package available.
See the version list below for details.
dotnet add package JustyBase.Netezza --version 0.8.4
                    
NuGet\Install-Package JustyBase.Netezza -Version 0.8.4
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="JustyBase.Netezza" Version="0.8.4" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="JustyBase.Netezza" Version="0.8.4" />
                    
Directory.Packages.props
<PackageReference Include="JustyBase.Netezza" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add JustyBase.Netezza --version 0.8.4
                    
#r "nuget: JustyBase.Netezza, 0.8.4"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package JustyBase.Netezza@0.8.4
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=JustyBase.Netezza&version=0.8.4
                    
Install as a Cake Addin
#tool nuget:?package=JustyBase.Netezza&version=0.8.4
                    
Install as a Cake Tool

JustyBase.Netezza

NuGet License

Integration layer between Netezza metadata, JustyBase.NetezzaSqlParser (SQL parsing, completion, linting), and JustyBase.NetezzaDdl (DDL generation).

This package lives in the JustyBase.NetezzaSql repository alongside the parser, DDL, and catalog libraries.

Use this package when you need to:

  • Represent a Netezza database schema (tables, views, columns, procedures) as immutable C# models
  • Feed that schema into the parser's completion engine via InMemorySchemaProvider
  • Convert schema metadata into DDL input models for CREATE TABLE / VIEW / PROCEDURE generation
  • Apply an engine-first fallback strategy for SQL completion

The package has no I/O, no UI dependency, and no database driver reference — it is pure data transformation.

Dependencies

Package Purpose
JustyBase.NetezzaSqlParser SQL lexer, parser, AST, completion engine, linter
JustyBase.NetezzaDdl DDL text builder (CREATE TABLE, CREATE VIEW, CREATE PROCEDURE, etc.)
Microsoft.Extensions.DependencyInjection.Abstractions DI abstractions for service registration

Target framework

  • .NET 10
  • Native AOT compatible (IsAotCompatible = true)

Public contract

Namespace Types Purpose
JustyBase.Netezza.Models NetezzaSchemaSnapshot, NetezzaSchemaTable, NetezzaSchemaColumn, NetezzaProcedureDefinition Immutable, UI-free metadata DTOs
JustyBase.Netezza.Schema NetezzaSchemaProviderAdapter Loads a snapshot into the parser's InMemorySchemaProvider
JustyBase.Netezza.Ddl NetezzaDdlInputFactory Converts neutral models to DDL package input types
JustyBase.Netezza.Completion SqlCompletionMergePolicy Engine-first vs. legacy fallback decision
JustyBase.Netezza.Abstractions ISqlCompletionMergePolicy, INetezzaSchemaProviderAdapter, INetezzaDdlInputFactory DI-friendly interfaces for all services
JustyBase.Netezza.DependencyInjection ServiceCollectionExtensions AddJustyBaseNetezza() extension for IServiceCollection
JustyBase.Netezza NetezzaResult<T> Result object pattern for expected failure modes

End-to-end example

using JustyBase.Netezza.DependencyInjection;
using JustyBase.Netezza.Ddl;
using JustyBase.Netezza.Models;
using JustyBase.Netezza.Schema;
using JustyBase.NetezzaSqlParser.Visitor;
using JustyBase.NetezzaDdl;

// 1. Build a schema snapshot (typically from a database query)
var snapshot = new NetezzaSchemaSnapshot([
    new NetezzaSchemaTable(
        "EMPLOYEES", Schema: "PUBLIC", Database: "HR",
        Columns: [
            new NetezzaSchemaColumn("ID", "INTEGER", Nullable: false),
            new NetezzaSchemaColumn("NAME", "VARCHAR(100)"),
            new NetezzaSchemaColumn("SALARY", "DECIMAL(10,2)")
        ],
        Description: "Employee master table")
]);

// 2. Load into parser schema provider (enables semantic completion/linting)
var provider = new InMemorySchemaProvider();
NetezzaSchemaProviderAdapter.Apply(provider, snapshot);

// 3. Build DDL input and generate CREATE TABLE script
var ddlInput = NetezzaDdlInputFactory.BuildTable(
    snapshot.Tables[0],
    distributeColumns: ["ID"]);
var ddlBuilder = new NetezzaDdlTextBuilder();
var sql = new StringBuilder();
ddlBuilder.AppendCreateTable(sql, ddlInput);
Console.WriteLine(sql.ToString());
// Output: CREATE TABLE "HR"."PUBLIC"."EMPLOYEES" ( ... ) DISTRIBUTE ON ("ID");

DI registration

services.AddJustyBaseNetezza();
// Registers: ISqlCompletionMergePolicy, INetezzaSchemaProviderAdapter, INetezzaDdlInputFactory

Build and test

dotnet restore .\JustyBase.NetezzaSql.sln
dotnet build .\JustyBase.NetezzaSql.sln -c Release
dotnet test .\tests\JustyBase.Netezza.Tests\JustyBase.Netezza.Tests.csproj -c Release

See the repository release guide for publishing.

Product Compatible and additional computed target framework versions.
.NET 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.8.5 75 8/30/2026
0.8.4 77 8/30/2026
0.8.3 78 8/29/2026
0.8.2 96 8/16/2026
0.8.1 91 8/14/2026
0.8.0 93 8/10/2026
0.6.0 104 8/6/2026
0.5.2 95 8/5/2026
0.5.1 100 8/5/2026
0.5.0 97 8/5/2026
0.4.1 96 8/4/2026
0.4.0 102 8/4/2026
0.3.0 198 8/2/2026
0.3.0-preview.9 63 8/1/2026
0.3.0-preview.8 60 7/31/2026
0.3.0-preview.7 56 7/31/2026
0.3.0-preview.6 56 7/31/2026
0.3.0-preview.5 69 7/30/2026
0.3.0-preview.3 76 7/26/2026
0.3.0-preview.2 57 7/26/2026
Loading failed