Wir arbeiten an einem Projekt, für das täglich Daten aus einer Excel-Tabelle importiert werden müssen. Die Daten werden aus einer vordefinierten Vorlage importiert und was wir denken, zuerst laden wir Daten in eine temporäre Tabelle hoch und führen einen Reinigungsvorgang durch (Entfernen unnötiger Informationen, Hinzufügen neuer Zeilen in der übergeordneten Tabelle und Abrufen ihrer FK usw.).
- Ich muss wissen, ob es ein Tool oder Dienstprogramm gibt, das unseren Aufwand reduzieren kann.
- Was ist der beste Weg, um Massendatensätze aus verschiedenen Quellen (hauptsächlich aus Excel-Tabellen) einzufügen?
sql-server
bulk
import
Kodvavi
quelle
quelle
Antworten:
SSIS ist der richtige Weg. Wenn Sie noch nie ein Paket erstellt haben und wissen, dass Ihre Quelldateien (lesen Sie auch: Tabellenkalkulationen) immer dieselben sein werden, können Sie den Import / Export-Assistenten von SQL Server verwenden. Klicken Sie in SSMS mit der rechten Maustaste auf Datenbank und wählen Sie Aufgaben> Daten importieren (oder exportieren) ...
Dies öffnet einen Assistenten, der Sie durch die Schritte zur Auswahl Ihrer Quell- / Zieldateien sowie der Zieltabellen führt (kann Tabellen erstellen, falls diese noch nicht vorhanden sind). Sie müssen zuordnen, welche Spalten wohin gehen, aber der Assistent ist ziemlich einfach. Wenn Sie fertig sind, werden Sie aufgefordert, das Paket auszuführen oder zu speichern (oder beides zu tun). Speichern Sie das Paket. Dadurch wird Ihr Paket im DTSX-Format gespeichert, wenn Sie es im Dateisystem speichern möchten. Sie können das Paket auch in SQL Server selbst speichern, um es dann in der msdb-Systemdatenbank zu speichern.
Sobald Sie Ihr Paket gespeichert haben, können Sie einen SQL Agent-Job erstellen, um dieses Paket regelmäßig auszuführen (Sie geben den Zeitplan an), damit Sie Ihre Tabellen immer mit SSIS laden können. Wenn Sie mehr über SSIS erfahren möchten, besuchen Sie die kostenlosen Webinare meines Unternehmens (wir decken den gesamten BI-Stack ab) bei PragmaticWorks
quelle
Hier ist ein Beispiel zum Importieren von Daten aus Excel in SQL Server. Eines der Hauptprobleme besteht darin, sicherzustellen, dass Sie die Datenkonvertierungskomponente zwischen Excel und SQL Server verwenden und eine Konvertierung von NVARCHAR nach VARCHAR durchführen, da Excel die Daten als NVARCHAR behandelt.
http://www.mssqltips.com/tip.asp?tip=1393
quelle
Verwenden Sie SQL Server Integration Services . So einfach ist das.
Wir können Ihnen hier nicht zeigen, wie es geht: Es ist zu allgemein
quelle
Ich würde nichts wegwerfen
mr. gbn,Sankar Reddy,SQLChicken
. Aber ich möchte sagen, dass es eine einfache Möglichkeit gibt, Excel-Tabellen in SQL zu importieren, und zwar über 'OPENROWSET' TSQL.Zum Beispiel zum Importieren einer
user
Excel-Tabelle in eineTestDB
Datenbank. Angenommen, ich habe die[user]
Tabelle bereits in derTestDB
Datenbank erstellt. Dann wäre die einfache Openrowset-TSQL unten so zu erwähnenHinweis: Ich schreibe diese TSQL in einer SQL Server 2012-Umgebung. Für jeden SQL Server ist der Openrowset-
OLEDB
Anbieter unterschiedlich. Bitte überprüfen Sie denOLEDB
für diese Version von SQL Server unterstützten Verbindungsserver-> Anbieter. In meinem Fall ist esACE.OLEDB.12.0
. Stellen Sie vor dem Import sicher, dassAllow inprocess
dieserMICROSOFT.ACE.OLEDB.12.0
Anbieter aktiviert ist oder nicht . Es sollte so überprüft werdenHinweis: - Es wurde in einer Produktionsumgebung getestet. Aber in Ihrem Fall ohne in Testumgebung zu testen. Nicht direkt in der Produktionsumgebung ausführen.
quelle