violak
Goto Top

Mit Powershell Inhalte einer SQL Datenbank löschen

Guten Abend,

ich schreibe mit meinem PowerShell Skript Benutzerdaten aus dem AD in eine MS SQL Datenbank.

MS SQL 2016, das PowerShell SQL Modul ist installiert.

#Daten an SQL Datenbank weitergeben
$insertquery="   
INSERT INTO [dbo].[UsersDB] 
           ([Zeit] 
           ,[Gruppe] 
           ,[Benutzername]) 
     VALUES 
           ('$timetolive'   
           ,'$Group'   
           ,'$Groupmember')   
GO 
"   
 
Invoke-SQLcmd -ServerInstance 'localhost' -query $insertquery -U sa -P Hallo123 -Database power   

Das Funktioniert soweit auch sehr gut.

Jetzt wollte ich gerne einmal alle Daten in der Datenbank löschen, meine Tabellen sollen dabei aber bestehen bleiben nur die Inhalte sollen gelöscht werden.

Irgendwie komme ich aber nicht dahin, dass das irgendwie funktionieren will.

Hat jemand von Euch einen Tipp für mich wie ich das mit PowerShell machen kann?

Vielen Dank

Content-Key: 492423

Url: https://administrator.de/contentid/492423

Printed on: April 23, 2024 at 12:04 o'clock

Mitglied: 140913
Solution 140913 Sep 06, 2019 updated at 18:53:44 (UTC)
Goto Top
https://www.w3schools.com/sql/sql_delete.asp
DELETE FROM TABELLEXYZ
und alles in der entsprechenden Tabelle is wech ...
Member: violak
violak Sep 06, 2019 at 19:31:49 (UTC)
Goto Top
Ah ja klasse danke.

Dann wäre der Befehl

$insertquery2="   
DELETE FROM UsersDB WHERE Benutzername='rolandeich'  
GO 
"   
 
Invoke-SQLcmd -ServerInstance 'localhost' -query $insertquery2 -U sa -P Hallo123 -Database power   

Vielen Dank face-smile
Member: Pjordorf
Pjordorf Sep 06, 2019 at 20:11:07 (UTC)
Goto Top
Hallo,

Zitat von @violak:
Dann wäre der Befehl
Nee, da du alle Datensätze in einer Tabelle löschen wolltest
Jetzt wollte ich gerne einmal alle Daten in der Datenbank löschen, meine Tabellen sollen dabei aber bestehen bleiben nur die Inhalte sollen gelöscht werden.
Du musst nur jede Tabelle einmal anfassen. Siehe auch
Delete All Records

It is possible to delete all rows in a table without deleting the table. This means that the table structure, attributes, and indexes will be intact:
DELETE FROM table_name;
also ein Delete ohne deine WHERE Bedingung.
https://www.w3schools.com/sql/default.asp

Gruß,
Peter