Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

INSERTO BULK di SQL Server da Linux

La funzione BULK INSERT di Microsoft SQL Server consente di caricare rapidamente i dati in SQL Server.

Il driver ODBC di Easysoft SQL Server ti consente di sfruttare questa funzionalità di SQL Server da Linux:

  1. Sulla macchina Linux, scaricare, installare e concedere in licenza il driver ODBC di SQL Server.

    Per istruzioni sull'installazione e sulla licenza, vedere la documentazione del prodotto del driver ODBC di SQL Server.

  2. Crea un'origine dati del driver ODBC di SQL Server in odbc.ini che si connetta all'istanza di SQL Server in cui desideri caricare i dati. Ad esempio:
    [SQLSERVER_SAMPLE]
    Driver=Easysoft ODBC-SQL Server
    Description=Easysoft SQL Server ODBC driver
    Server=mymachine\myinstance
    User=mydomain\myuser
    Password=mypassword
    Database=mydatabase
  3. Usa isql per creare una tabella di SQL Server in cui archiviare i dati. Ad esempio:
    $ /usr/local/easysoft/unixODBC/bin/isql.sh -v SQLSERVER_SAMPLE
    SQL> CREATE TABLE BULK_TEST ( test_id integer, test_name varchar(10) )
  4. Crea un file contenente alcuni dati da inserire in SQL Server:
    1,Apple
    2,Orange
    3,Plum
    4,Pear
  5. Salva il file come bulk.txt e copialo in un punto in cui l'istanza di SQL Server può accedere al file.

    Può trovarsi sul computer SQL Server o su una cartella condivisa remota. SQL Server 2008 e versioni successive supportano i percorsi UNC (Universal Naming Convention) come mezzo per individuare il file.

    Per il nostro test, abbiamo posizionato il file su una condivisione Samba:

    \\myhost\myshare
  6. Usa isql per avviare l'inserimento collettivo. Ad esempio:
    SQL> BULK INSERT bulk_test FROM '\\myhost\myshare\bulk.txt' WITH ( FIELDTERMINATOR = ',', ROWTERMINATOR = '\n' )