Get Eul Table Schema
Zuletzt geändert: 24.05.2026 21:20

Übersicht

Get-EulTableSchema #

ÜBERSICHT #

Liefert die Spalten-Definition einer EULANDA-Tabelle als PSObject-Array.

SYNTAX #

Get-EulTableSchema [-Conn] <__ComObject> [-Table] <string> [<CommonParameters>]

BESCHREIBUNG #

Liest die Schema-Information einer SQL-Server-Tabelle: Spaltenname, Datentyp, Größe, Nullable, Primärschlüssel-Flag, Identity-Flag. Wird vom Excel-Pipeline-Layer (Tier 2) als Basis für Type-Mapping (SQL → Excel) und Update-by-Key-Strategie genutzt.

Reflection läuft über drei Queries:

  1. SELECT TOP 0 für ADO-Field-Definitionen (Name/Type/Size/Nullable)
  2. INFORMATION_SCHEMA für Primärschlüssel
  3. INFORMATION_SCHEMA + COLUMNPROPERTY für Identity und Computed

Tabellenname wird NICHT validiert – Plugin-Autor ist für Vertrauens- würdigkeit der Eingabe verantwortlich (kein User-Input direkt durch- reichen). Eulanda-Plugin-Kontext, kein End-User-SQL.

PARAMETER #

-Conn #

Type: __ComObject

ADODB.Connection-Objekt zur EULANDA-Datenbank. Caller-owns-Connection, wird NICHT geschlossen.

-Table #

Type: string

Tabellenname (z.B. ‘Artikel’, ‘Adresse’, ‘RechnungPos’).

AUSGABEN #

[PSCustomObject[]] mit Eigenschaften pro Spalte:

Name (string) Spaltenname Type (int) ADODB.DataTypeEnum Wert TypeName (string) Kurzer Type-Name (Int / String / Date / …) Size (int) Maximale Größe (bei String/Binary) Precision (int) Gesamtzahl Stellen (bei Decimal/Numeric) NumericScale (int) Nachkommastellen (bei Decimal/Numeric) IsNullable (bool) IsKey (bool) Teil des Primärschlüssels IsIdentity (bool) Auto-Increment-Spalte IsComputed (bool) Berechnete Spalte (kein INSERT/UPDATE möglich)

BEISPIELE #

$conn = Get-ConnByUdl -Udl 'C:\Eulanda\EULANDA_1 Mustermann.udl'
$cols = Get-EulTableSchema -Conn $conn -Table 'Artikel'
$cols | Where-Object IsKey | Select-Object Name, TypeName
# Liefert die PK-Spalten
# Update-by-Key bestimmen
$key = (Get-EulTableSchema -Conn $conn -Table 'Artikel' |
        Where-Object IsKey | Select-Object -First 1).Name

HINWEISE #

Phase 4 Tier 1 – DB-Bausteine für Excel-Pipeline und allgemeine Reflection (auch für Reporting-/ABO-Skripte ohne Excel-Bezug nutzbar).