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

Masseindsættelse med tekstkvalifikation i SQL Server

Du skal bruge en 'formatfil' for at implementere en tekstkvalifikation til masseindsættelse. Grundlæggende bliver du nødt til at lære masseindlægget, at der er potentielt forskellige afgrænsningstegn i hvert felt.

Opret en tekstfil kaldet "level_2.fmt", og gem den.

11.0
2
1   SQLCHAR   0  8000   "\","      1     wkt         SQL_Latin1_General_CP1_CI_AS
2   SQLCHAR   0  40   "\r\n"      2     area         SQL_Latin1_General_CP1_CI_AS

Den første linje, "11.0" refererer til din version af SQL. Den anden linje viser, at din tabel, [level2_import], har to kolonner. Hver linje efter det vil beskrive en kolonne og adlyder følgende format:

[Kildekolonnenummer][DataType][Min.størrelse][Maks.størrelse][Afgrænsningsmønster][Destinationskolonnenummer][Destinationskolonnenavn][Kortfølsomhed for database]

Når du har oprettet den fil, kan du læse dine data ind med følgende bulk insert statement:

BULK INSERT level2_import
FROM 'D:\test.csv'
WITH 
(
  FIRSTROW = 2,
  FORMATFILE='D:\level_2.fmt'
);

Se denne blog for en detaljeret forklaring af formatfilen.



  1. ScaleGrid tilføjer Oracle Cloud til Managed Database Hosting

  2. Opret en automatisk stigningskolonne i SQLite

  3. MariaDB ROUND() vs TRUNCATE()

  4. Kompatibilitetsniveauer og Cardinality Estimation Primer