Mit der BULK INSERT-Funktion von Microsoft SQL Server können Sie Daten schnell in SQL Server laden.
Mit dem Easysoft SQL Server ODBC-Treiber können Sie diese SQL Server-Funktion unter Linux nutzen:
- Laden Sie auf Ihrem Linux-Computer den SQL Server ODBC-Treiber herunter, installieren und lizenzieren Sie ihn.
Anweisungen zur Installation und Lizenzierung finden Sie in der Produktdokumentation zum SQL Server-ODBC-Treiber.
- Erstellen Sie eine SQL Server-ODBC-Treiberdatenquelle in odbc.ini, die eine Verbindung zu der SQL Server-Instanz herstellt, in die Sie die Daten laden möchten. Beispiel:
[SQLSERVER_SAMPLE] Driver=Easysoft ODBC-SQL Server Description=Easysoft SQL Server ODBC driver Server=mymachine\myinstance User=mydomain\myuser Password=mypassword Database=mydatabase
- Verwenden Sie
isql
zum Erstellen einer SQL Server-Tabelle zum Speichern der Daten. Zum Beispiel:$ /usr/local/easysoft/unixODBC/bin/isql.sh -v SQLSERVER_SAMPLE SQL> CREATE TABLE BULK_TEST ( test_id integer, test_name varchar(10) )
- Erstellen Sie eine Datei mit einigen Daten zum Einfügen in SQL Server:
1,Apple 2,Orange 3,Plum 4,Pear
- Speichern Sie die Datei als bulk.txt und kopieren Sie sie an einen Ort, an dem die SQL Server-Instanz auf die Datei zugreifen kann.
Dies kann sich auf dem SQL Server-Computer oder in einem freigegebenen Remoteordner befinden. SQL Server 2008 und höher unterstützt UNC-Pfade (Universal Naming Convention) zum Auffinden der Datei.
Für unseren Test haben wir die Datei auf einer Samba-Freigabe abgelegt:
\\myhost\myshare
- Verwenden Sie
isql
um die Masseneinfügung zu initiieren. Zum Beispiel:SQL> BULK INSERT bulk_test FROM '\\myhost\myshare\bulk.txt' WITH ( FIELDTERMINATOR = ',', ROWTERMINATOR = '\n' )