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

SQL Server BULK INSERT fra Linux

Microsoft SQL Servers BULK INSERT-funktion giver dig mulighed for hurtigt at indlæse data til SQL Server.

Easysoft SQL Server ODBC-driveren lader dig drage fordel af denne SQL Server-funktion fra Linux:

  1. På din Linux-maskine skal du downloade, installere og licensere SQL Server ODBC-driveren.

    For installations- og licensinstruktioner, se SQL Server ODBC-driverens produktdokumentation.

  2. Opret en SQL Server ODBC-driverdatakilde i odbc.ini, der forbinder til den SQL Server-instans, som du vil indlæse dataene i. For eksempel:
    [SQLSERVER_SAMPLE]
    Driver=Easysoft ODBC-SQL Server
    Description=Easysoft SQL Server ODBC driver
    Server=mymachine\myinstance
    User=mydomain\myuser
    Password=mypassword
    Database=mydatabase
  3. Brug isql at oprette en SQL Server-tabel til at gemme dataene. For eksempel:
    $ /usr/local/easysoft/unixODBC/bin/isql.sh -v SQLSERVER_SAMPLE
    SQL> CREATE TABLE BULK_TEST ( test_id integer, test_name varchar(10) )
  4. Opret en fil, der indeholder nogle data, der skal indsættes i SQL Server:
    1,Apple
    2,Orange
    3,Plum
    4,Pear
  5. Gem filen som bulk.txt og kopier den et sted, hvor SQL Server-instansen kan få adgang til filen.

    Dette kan være på SQL Server-maskinen eller på en ekstern delt mappe. SQL Server 2008 og nyere understøtter UNC-stier (Universal Naming Convention) som et middel til at lokalisere filen.

    Til vores test placerede vi filen på en Samba-share:

    \\myhost\myshare
  6. Brug isql for at starte bulkinsert. For eksempel:
    SQL> BULK INSERT bulk_test FROM '\\myhost\myshare\bulk.txt' WITH ( FIELDTERMINATOR = ',', ROWTERMINATOR = '\n' )

  1. Annoncerer Barman 1.0, Backup and Recovery Manager for PostgreSQL

  2. SQL Server 2017 gendannelse

  3. Hvad er forskellen mellem VARCHAR og NVARCHAR i SQL server - SQL Server / T-SQL Tutorial Del 32

  4. Begivenheder og tråde i .NET