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