Sdílet prostřednictvím


Průvodce importem plochého souboru do SQL

platí pro:SQL ServerAzure SQL Databaseazure SQL Managed Instance

Pro obsah související s Průvodcem pro import a export se podívejte na Import a export dat pomocí průvodce SQL Serveru pro import a export.

Průvodce importem plochých souborů je jednoduchý způsob, jak kopírovat data z plochého souboru (.csv, .txt) do nové tabulky v databázi. Průvodce importem plochých souborů podporuje soubory formátu oddělené čárkami i s pevnou šířkou. Tento přehled popisuje důvody použití tohoto průvodce, jak tento průvodce najít, a jednoduchý příklad, jak postupovat.

Proč bych měl(a) použít tohoto průvodce?

Tento průvodce byl vytvořen pro zlepšení aktuálního prostředí importu s využitím inteligentní architektury označované jako Syntéza programů pomocí příkladů (PROSE). Pro uživatele bez specializovaných znalostí o doméně může být import dat často složitý, náchylný k chybám a zdlouhavý úkol. Tento průvodce zjednodušuje proces importu stejně jednoduchý jako výběr vstupního souboru a jedinečného názvu tabulky a rozhraní PROSE zpracovává zbytek.

PROSE analyzuje vzory dat ve vstupním souboru, aby odvodil názvy sloupců, typy, oddělovače a další. Tato architektura se učí strukturu souboru a dělá veškerou tvrdou práci, aby uživatelé nemuseli.

Požadavky

Tato funkce je dostupná v sadě SQL Server Management Studio (SSMS) verze 17.3 nebo novější. Ujistěte se, že používáte nejnovější verzi. Nejnovější verzi najdete tady.

Začínáme

Chcete-li získat přístup k Průvodci importem plochých souborů, postupujte takto:

  1. Otevřete SQL Server Management Studio.
  2. Připojte se k instanci databázového stroje SQL Serveru nebo k místnímu hostiteli.
  3. Rozbalte Databáze, klikněte pravým tlačítkem myši na databázi (test v následujícím příkladu), přejděte na Úkolya vyberte Importovat plochý soubor nad Importem dat.

snímek obrazovky s nabídkou Importovat plochý soubor

Další informace o různých funkcích průvodce najdete v následujícím kurzu:

Návod

Pro účely tohoto kurzu můžete použít vlastní plochý soubor. Jinak tento návod používá následující CSV soubor z Excelu, který si můžete volně zkopírovat. Pokud použijete tento soubor CSV, pojmenujte ho example.csv a nezapomeňte ho uložit do snadno dostupného umístění, jako je vaše plocha.

snímek obrazovky Excelu

Přehled:

  1. Průvodce accessem
  2. Zadat vstupní soubor
  3. Náhled dat
  4. Upravit sloupce
  5. souhrnu
  6. výsledky

Krok 1: Průvodce přístupem a úvodní stránka

Přístup k průvodci, jak je popsáno zde.

První stránka průvodce je uvítací. Pokud tuto stránku nechcete znovu zobrazit, vyberte Nezobrazovat tuto úvodní stránku znovu.

Snímek obrazovky s úvodní nabídkou průvodce importem plochých souborů

Krok 2: Zadání vstupního souboru

Vyberte procházet a vyberte vstupní soubor. Ve výchozím nastavení průvodce vyhledá soubory .csv a .txt. PROSE zjistí, jestli je soubor oddělený čárkami nebo formát s pevnou šířkou bez ohledu na příponu souboru.

Název nové tabulky by měl být jedinečný a průvodce vám neumožňuje pokračovat, pokud ne.

Snímek obrazovky - Průvodce importem plochého souboru: Nabídka Zadat vstupní soubor

Krok 3: Náhled dat

Průvodce vygeneruje náhled, který můžete zobrazit pro prvních 50 řádků. Pokud dojde k nějakým problémům, vyberte zrušit, jinak přejděte na další stránku.

snímek obrazovky s nabídkou Náhled dat průvodce importu plochých souborů

Krok 4: Úprava sloupců

Průvodce identifikuje, o čem se domnívá, že jsou správné názvy sloupců, datové typy atd. Tady je místo, kde můžete upravit pole, pokud jsou nesprávná (například datový typ by měl být plovoucí místo int).

Sloupce, ve kterých jsou zjištěny prázdné hodnoty, budou mít zaškrtnuté políčko Povolit hodnoty Null. Pokud ale ve sloupci očekáváte hodnoty null a možnost Povolit hodnoty Null není zaškrtnutá, tady je místo, kde můžete aktualizovat definici tabulky tak, aby umožňovala hodnoty null v jednom nebo všech sloupcích.

Pokračujte, až budete připraveni.

snímek obrazovky s nabídkou Průvodce importem plochých souborů pro úpravu sloupců

Krok 5: Souhrn

Toto je jednoduše souhrnná stránka zobrazující vaši aktuální konfiguraci. Pokud dojde k problémům, můžete se vrátit k předchozím sekcím. Jinak, pokud zvolíte dokončení, pokusí se o import.

Snímek obrazovky souhrnné nabídky Průvodce importem plochých souborů.

Krok 6: Výsledky

Tato stránka označuje, jestli byl import úspěšný. Pokud se zobrazí zelená značka zaškrtnutí, byla úspěšná, jinak možná budete muset zkontrolovat konfiguraci nebo vstupní soubor, jestli neobsahují chyby.

snímek obrazovky s nabídkou výsledků průvodce importem plochých souborů

Řešení problémů

Průvodce importem plochých souborů zjistí datové typy na základě prvních 200 řádků. Ve scénářích, kdy data dále v plochém souboru neodpovídají automaticky rozpoznaným datovým typům, dojde během importu k chybě. Chybová zpráva by byla podobná následující:

Error inserting data into table. (Microsoft.SqlServer.Prose.Import)
The given value of type String from the data source cannot be converted to type nvarchar of the specified target column. (System.Data)
String or binary data would be truncated. (System.Data)

Taktika pro zmírnění této chyby:

  • Rozšíření velikosti datových typů v kroku Upravit sloupce, například délka sloupce nvarchar, může kompenzovat variace dat ze zbytku plochého souboru.
  • Povolení zasílání zpráv o chybách v kroku Upravit sloupce, zejména menším číslem, odhalí řádky v plochém souboru data, která neodpovídají vybraným datovým typům. Například v plochém souboru, kde druhý řádek představuje chybu, spuštění importu se zprávou o chybách s rozsahem 1 poskytuje konkrétní chybovou zprávu. Zkoumání souboru přímo na místě může umožnit cílenější změny datových typů na základě dat v identifikovaných řádcích.

snímek obrazovky s chybou v Průvodci importem plochých souborů hlásí výsledky.

Error inserting data into table occurred while inserting rows 1 - 2. (Microsoft.SqlServer.Prose.Import)
The given value of type String from the data source cannot be converted to type float of the specified target column. (System.Data)
Failed to convert parameter value from a String to a Double. (System.Data)

V současné době dovozce používá kódování na základě aktivní znakové stránky systému. Ve většině počítačů se toto výchozí nastavení nastaví na ANSI.

Přečtěte si další informace o průvodci.