Datenimport Powershell in MsSql Datenbank aus AD
Guten Morge,
ich hab ein kleines Problem wo ich leider nicht so weiterkomme. Ich hab mit SQL Datenbanken sehr wenig Erfahrung, und ich hoffe ihr könnt mir weiterhelfen.
Ich hab eine MSSQL Datenbank vorliegen, in der Tabelle Import_Data sind schon ca. 100 Datensätze vorhanden.
Der Import funktioniert, aber ich hab dann die Personalnummer, Vornamen und Nachnamen mehrmals in der Datenbank, das ist natürlich nicht so gewollt. Könnt ihr mir einen Tipp geben wie ich vorgehen muss, damit nur neue Nutzer hinzugefügt werden?! Die Personalnummer ist einmalig.
ich hab ein kleines Problem wo ich leider nicht so weiterkomme. Ich hab mit SQL Datenbanken sehr wenig Erfahrung, und ich hoffe ihr könnt mir weiterhelfen.
Ich hab eine MSSQL Datenbank vorliegen, in der Tabelle Import_Data sind schon ca. 100 Datensätze vorhanden.
Der Import funktioniert, aber ich hab dann die Personalnummer, Vornamen und Nachnamen mehrmals in der Datenbank, das ist natürlich nicht so gewollt. Könnt ihr mir einen Tipp geben wie ich vorgehen muss, damit nur neue Nutzer hinzugefügt werden?! Die Personalnummer ist einmalig.
foreach($data in $datas)
{
$nummer=[decimal]$data.EmployeeNumber
$name=$data.Surname
$vorname=$data.GivenName
$insertquery="
INSERT INTO [dbo].[IMPORT_DATA]
([Personalnummer]
,[Nachname]
,[Vorname])
VALUES
('$nummer'
,'$name'
,'$vorname')
GO
"
Invoke-SQLcmd -ServerInstance 'TEST\SQLEXPRESS,1433' -query $insertquery -U sa -P testdb -Database smart
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 483440
Url: https://administrator.de/forum/datenimport-powershell-in-mssql-datenbank-aus-ad-483440.html
Ausgedruckt am: 19.05.2025 um 04:05 Uhr
2 Kommentare
Neuester Kommentar
Unter MSSQL bietet sich da der MERGE Befehl an. Die Syntax ist anders und wirkt erstmal umfangreich aber eigentlich ist es dafür gemacht. Wenn du eh nur einen Datensatz pro INSERT einfügst gingen auch diverse andere Möglichkeiten.
Du musst dir allerdings über SQL Injection klar sein, je nachdem was da in deinen Variablen steht.
Du musst dir allerdings über SQL Injection klar sein, je nachdem was da in deinen Variablen steht.