Get-SqlInsertStatement

EulandaXtools — Funktionsreferenz

Get-SqlInsertStatement

ÜBERSICHT

Erzeugt ein SQL-INSERT-Statement für eine beliebige Tabelle anhand einer Hashtable von Spaltenwerten.

SYNTAX

Get-SqlInsertStatement [[-Tablename] <string>] [[-Fields] <hashtable>] [[-Conn] <__ComObject>]
    [<CommonParameters>]

BESCHREIBUNG

Diese Funktion nimmt eine Zieltabelle, eine Hashtable mit Spaltennamen/Werten und eine aktive ADO-Verbindung entgegen. Sie erzeugt ein valides SQL-INSERT-Statement inklusive Datentyp-Validierung und Escaping, basierend auf der SQL-Tabellenstruktur.

Das Statement enthält zusätzlich 'SELECT SCOPE_IDENTITY() AS NewId;', um die erzeugte ID zurückzugeben. Unterstützt automatische Typkonvertierung für bit, int, decimal, date, und varchar/nvarchar-Spalten. SQL-Ausdrücke (z.B.. 'dbo.') werden nicht escaped.

PARAMETER

-Tablename

Type: string

Name der Zieltabelle, in die eingefügt werden soll (z.B.. 'ADRESSE').

-Fields

Type: hashtable

Hashtable mit Spaltennamen und zugehörigen Werten. Der Schlüssel ist der SQL-Spaltenname, der Wert der einzufügende Inhalt.

-Conn

Type: __ComObject

Aktive ADO-Verbindung (z.B.. über '[System.__ComObject]').

AUSGABEN

string, void

Ein vollständiges SQL-INSERT-Statement, das mit 'Conn.Execute()' ausgeführt werden kann. Im Fehlerfall (z.B. ungültige Verbindung oder fehlende Metadaten) wird `$null` zurückgegeben.

BEISPIELE

$sql = Get-SqlInsertStatement -Tablename 'ADRESSE' -Fields $Fields -Conn $Conn
$Conn.Execute($sql)

HINWEISE