Please enable / Bitte aktiviere JavaScript!
Wir benötigen diese Funktion um Besucher abzuweisen, die Adblocker nutzen.

Script zum Import von Daten aus einer CSV Datei in eine bereits bestehende MS-SQL-Tabelle per Bulk-Operation. Erstellung einer temporären Tabelle, Einlesen, Übernahme in Produktivtabelle. Die Zuordnung der Daten zu den richtigen Schlüssel erfolgt über einen Inner-Join.

 

 

 

Wichtig hierbei ist lediglich zu beachten, dass der durchführende Datenbankbenutzer das Recht für "Bulk-Operations" hat.

 

 

CREATE TABLE TEMP (

  [personalnr] varchar(15),

  [Emailadresse] varchar(200),

  [Ort] varchar(40)

-- Hier erstellen wir eine Temporäre Tabelle um die Daten der CSV-Datei erstmals anzunehmen und zwischenzulagern.

-- Die Reihenfolge der Spaltennamen muss auch in der CSV-Datei eingehalten werden.

)

GO

BULK INSERT TEMP-- Temporäre Tabelle mit CSV-Daten füllen

FROM 'J:\WORK\import\mail.csv'-- Dies ist der Pfad zu der Datei die importiert wird. WICHTIG: Der Pfad bezieht sich auf den Pfad im Server, nicht auf den Rechner auf dem das Managementstudio ausgeführt wird.

WITH

 (

    FIELDTERMINATOR=',',    -- Darauf achten, dass die CSV-Datei wirklich die Spalten mit Komma und nicht mit Semikolon separiert

    rowterminator='\n'     --\n ist in den meisten Fällen korrekt, zumindest wenn die Datei aus einer deutschen Excel-Version als CSV erstellt wurde und ggf. nochmal mit dem Editor nachbearbeitet wurde.

  )    

GO

UPDATE mitarbeiter-- Inhalte der temporären Tabelle werden in die Produktivtabelle übernommen. Als Zuordnungsmerkmal fungiert die Personalnummer, welche wir in der temporären Tabelle "joinen".

SET Emailadresse=temp.Emailadresse,Ort=temp.Ort

FROM mitarbeiter

INNERJOIN temp

ON mitarbeiter.personalnr=temp.personalnr

GO

DROP TABLE TEMP  -- Nach Abschluss aller vorherigen Vorgänge können wir die temporäre Tabelle löschen.

GO

Kommentar schreiben

     

Sicherheitscode
Aktualisieren

Cookies erleichtern die Bereitstellung unserer Dienste. Mit der Nutzung unserer Dienste erklären Sie sich damit einverstanden, dass wir Cookies verwenden.
Ok