Převodník CSV do SQL
Z exportu tabulky vytvořte skript, který spustíte ve své databázi. Řádek záhlaví určí názvy sloupců, z každého řádku vznikne příkaz INSERT a uvozovky odpovídají zvolenému dialektu.
Převodník dat
nebo sem přetáhněte soubory CSV, TSV, TXT … ·
Max. 95 MB na soubor· Až 20 souborů· Smazáno po 30 minutách
Soubory se zpracovávají na našich serverech a po 30 minutách se smažou.
Znak, který odděluje sloupce v souborech CSV a textových souborech, při čtení i zápisu. Automaticky ho zjistí ze vstupu a zapisuje čárky.
UTF-8 funguje pro všechny jazyky. Zvolte UTF-8 s BOM, pokud Excel ve Windows po otevření CSV zobrazuje rozbitou diakritiku nebo asijské znaky.
Vstup Excel, ODS a Numbers: převést jen první list, nebo všechny listy (jedno CSV na list v ZIPu, nebo jeden klíč JSON na list).
Název karty listu v nové tabulce, nejvýše 31 znaků.
Pole objektů používá názvy sloupců jako klíče u každého řádku; pole polí je kompaktnější a hlavičku uchová jako první pole.
Název vnějšího prvku, který obalí všechny řádky; každý řádek se uvnitř stane prvkem <row>.
Používá se v příkazech CREATE TABLE a INSERT. Pouze písmena, číslice a podtržítka.
Uvozování a typy sloupců se mezi databázemi mírně liší; vyberte tu, do které budete importovat.
Přepíše buňky s datem do jednoho formátu. ISO (2026-10-18) je nejbezpečnější pro databáze a kód; Ponechat je nechá tak, jak jsou ve zdroji.
Jak nástroj používat
- 1
Nahrajte CSV
Přidejte jeden CSV soubor nebo až 20 souborů, každý do 95 MB. Soubory se středníkem a tabulátorem se rozpoznají automaticky.
- 2
Zadejte tabulku a dialekt
V části Pokročilá nastavení zadejte Název tabulky SQL a vyberte Dialekt SQL: MySQL, PostgreSQL, SQLite nebo SQL Server. Položka Data je nastavena na ISO, takže se datumové hodnoty načtou bez dohadů.
- 3
Převeďte a spusťte
Stiskněte Převést na SQL, zkontrolujte řádek CREATE TABLE a pak skript spusťte v databázovém klientu nebo na obrazovce importu.
Převodník CSV do SQL vytvoří z řádku záhlaví příkaz CREATE TABLE a pro každý datový řádek jeden INSERT, uvozený pro MySQL, PostgreSQL, SQLite nebo SQL Server, takže se tabulka načte do databáze spuštěním jediného skriptu.
Proč převést CSV na příkazy SQL INSERT
Každá databáze má rychlý nástroj pro načtení CSV a každý má háček. LOAD DATA LOCAL INFILE je od MySQL 8.0 na serveru ve výchozím stavu vypnuté, COPY FROM souboru vyžaduje v PostgreSQL práva superuživatele nebo členství ve zvláštní roli a BULK INSERT v SQL Serveru čte cesty na serveru, ne na vašem notebooku. Hostované databáze často nabízejí jen editor dotazů.
Skript s příkazy INSERT se těmto omezením vyhne. Je to text, takže ho můžete přečíst, uložit do správy verzí jako počáteční data a spustit v libovolném klientu. Cenou je rychlost: desítky tisíc řádků se načtou bez potíží, miliony patří do nativního hromadného nástroje. Vývojáři, kteří mají číselníky v sešitu, mohou krok s CSV přeskočit pomocí Excel do SQL.
Příklad převodu CSV do SQL pro MySQL
CREATE TABLE `my_table` ( `id` INT, `name` VARCHAR(255), `joined` DATE ); INSERT INTO `my_table` (`id`, `name`, `joined`) VALUES (1, 'Jana Nováková', '2026-03-02'), (2, 'Liam O''Brien', '2026-04-15');
Čím se čtyři dialekty SQL ve výstupu liší
Identifikátory se uzavírají do zpětných apostrofů, například order date, což umožňuje použít jako názvy sloupců i vyhrazená slova, třeba order.
- Hodí se i pro MariaDB
- Dobrá výchozí volba pro importy v phpMyAdminu
Identifikátory používají standardní dvojité uvozovky. Uvozené názvy zachovávají velikost písmen, takže "Email" a email jsou dva různé sloupce.
- Názvy delší než 63 bajtů se zkrátí
Opět dvojité uvozovky a volné typování: sloupec deklarovaný jako INT přijme i text, pokud tabulka není deklarována jako STRICT, což je volba přidaná v SQLite 3.37.0.
- Funguje v konzoli sqlite3 nebo v DB Browser for SQLite
Identifikátory se zapisují do hranatých závorek, například [order date]. Textové sloupce s nelatinskými znaky vyžadují NVARCHAR a literály N'…'.
- Funguje v SSMS nebo Azure Data Studiu
| Organizace | Požadavek | Zdroj |
|---|---|---|
| MySQL 8.0 | max_allowed_packet je ve výchozím stavu 64 MB; větší jednotlivý příkaz je odmítnut | — |
| SQL Server | Jeden seznam INSERT … VALUES přijme nejvýše 1 000 výrazů s hodnotami řádků | — |
| PostgreSQL | Identifikátory delší než 63 bajtů se tiše zkrátí | — |
| SQLite | Tabulka může mít ve výchozím sestavení nejvýše 2 000 sloupců | — |
Co zkontrolovat před spuštěním skriptu
Nejdřív si přečtěte řádek CREATE TABLE. Typy sloupců se odhadují z hodnot a odhad může být chybný: PSČ a telefonní čísla vypadají jako čísla, ale musí zůstat textem, jinak 02134 přijde o počáteční nulu. Typ změňte ve skriptu před spuštěním, nebo si tabulku vytvořte sami a spusťte jen část s INSERT.
Do pole Název tabulky SQL zadejte skutečný název místo my_table a skript spusťte v transakci, pokud to klient umožňuje, aby se při jediném chybném řádku vše vrátilo zpět. Další výstupy pro stejné CSV najdete v přehledu převodník dat.
Formáty CSV a skriptů SQL
CSV
Hodnoty oddělené čárkami
CSV je textový formát pro tabulky, v němž každý řádek je záznam a sloupce se oddělují čárkami. Používá se od počátků výpočetní techniky a popisuje ho RFC 4180, i když mnoho variant používá středníky nebo tabulátory a různá kódování textu. Importovat a exportovat ho umí téměř každá tabulka, databáze i analytický nástroj, takže je výchozím formátem pro přenos dat mezi systémy. CSV ukládá pouze hodnoty, bez vzorců, formátování, více listů a datových typů.
- Komprese
- –
- Průhlednost
- –
- Animace
- –
- Představeno
- –
SQL
Skript SQL
Soubor SQL je textový skript s příkazy jazyka SQL (Structured Query Language), například CREATE TABLE a INSERT, které databáze provádí postupně. Běžně se používá pro zálohy databází, migrace a sdílení ukázkových dat. Samotný jazyk je normou ISO, ale MySQL, PostgreSQL, SQLite a SQL Server mají vlastní dialekty, takže skripty často vyžadují drobné úpravy mezi systémy. Soubor SQL otevře jakýkoli textový editor, ke spuštění je potřeba databázový klient.
- Komprese
- –
- Průhlednost
- –
- Animace
- –
- Představeno
- –
CSV se mění na SQL, když soubor musí skončit jako tabulka v databázi dostupné jen přes okno dotazů: při naplnění nové aplikace daty, načtení číselníku nebo přesunu tabulky do MySQL či PostgreSQL bez přístupu na server.
Otázky k převodu CSV do SQL
Proč použít soubor SQL místo LOAD DATA nebo COPY?
Hromadné nástroje jako LOAD DATA INFILE v MySQL a COPY v PostgreSQL jsou rychlejší, ale vyžadují přístup k souborům na serveru nebo další přepínače klienta. Prostý skript funguje všude, kam lze vložit SQL: v konzoli cloudové databáze, v phpMyAdminu nebo v prověřené migraci.
Jak se zapisují apostrofy ve jménech jako O'Brien?
V řetězci SQL se apostrof zapisuje zdvojením, takže hodnota vypadá jako 'O''Brien'. Tento zápis přijímají všechny čtyři dialekty, proto jméno s apostrofem příkaz INSERT nerozbije.
Co se v tabulce stane ze záhlaví mého CSV?
Názvy sloupců, uvozené tak, jak vyžaduje zvolený dialekt. Záhlaví jako Unit Price funguje, ale název s mezerou je nutné uvozovat i ve všech pozdějších dotazech, proto taková záhlaví před převodem raději přejmenujte na unit_price.
Mohu soubor SQL importovat přes phpMyAdmin?
Ano, na kartě Import. Limitem je tam PHP direktiva upload_max_filesize, která je ve standardním php.ini 2 MB; mnoho hostingů ji zvyšuje a stránka zobrazuje aktuální limit. Pokud je skript větší, rozdělte velké CSV na několik souborů.
Lze tabulku převést zpět do CSV?
Exportujte tabulku jako dump a převeďte ji pomocí SQL do CSV, nebo použijte vlastní export CSV ve svém databázovém klientu. Obě cesty dají řádky, které tabulkový procesor znovu otevře.
- Převod Excelu do SQLPřeveďte list Excelu na SQL skript pro MySQL, PostgreSQL, SQLite nebo SQL Server. Záhlaví se stane sloupci, řádky příkazy INSERT.
- Převod SQL do CSVPřeveďte příkazy INSERT z .sql dumpu na řádky CSV pro Excel nebo Tabulky Google. Dumpy z MySQL, phpMyAdmin, SQLite i SQL Serveru.
- Převodník CSV do XLSXPřeveďte CSV do sešitu Excel XLSX bez ztráty úvodních nul, dlouhých ID a diakritiky. Čárku, středník i tabulátor rozpozná automaticky.
- Převodník CSV do XMLPřeveďte řádky CSV do správně utvořeného XML s vlastním kořenovým tagem. Escapované znaky, detekce oddělovače, výstup UTF-8. Až 20 souborů.
- Převodník CSV do ParquetPřeveďte CSV do Apache Parquet s typy sloupců a kompresí pro pandas, DuckDB, Spark, BigQuery či Athena. Bez Pythonu i Sparku.
- Převod Parquet do CSVPřeveďte soubory Apache Parquet do CSV online a otevřete je v Excelu, Google Sheets či jiném nástroji. Bez Pythonu, Sparku a DuckDB. Až 20 souborů.