Výpis SQL (.sql)

ISO/IEC Standardní

Skript strukturovaného dotazovacího jazyka (SQL) je univerzální relační databázový formát obsahující deklarativní příkazy DDL pro vytváření databázových tabulek a příkazy DML INSERT pro naplnění dat.

Převést SQLITE do SQL

Bezplatný konvertor z SQLITE do SQL v prohlížeči. Převeďte soubory okamžitě ve svém zařízení.

Zkontrolovat a metadata

Operační systémy a analyzátory souborů identifikují soubory SQL kontrolou počáteční binární sekvence bajtů:

Vyberte nebo přetáhněte soubory sem

100% soukromá konverze v prohlížeči - soubory nikdy neopustí vaše zařízení

nebo vložte Ctrl+V
Záruka ochrany soukromí s nulovým přenosem po síti: 0 bajtů odesláno na externí servery. Veškeré zpracování probíhalo lokálně v sandboxu vašeho prohlížeče.

Podpis hlavičky na úrovni bajtů (Magic Bytes)

Operační systémy a analyzátory souborů identifikují soubory SQL kontrolou počáteční binární sekvence bajtů:

HEXADECIMÁLNÍ PODPIS (OFFSET 0):

2D 2D 20 / 43 52 45 41 54 45

ASCII REPREZENTACE: -- / CREATE

Standardizace: ISO/IEC 9075:2023 / ANSI SQL Standard

Technické specifikace

Architektura kontejneruUnicode plain text script containing Data Definition Language (DDL) and Data Manipulation Language (DML) statements
KompreseUncompressed plaintext (frequently compressed as .sql.gz or .sql.zst)
Endiantita bajtůUTF-8 / Unicode text stream
Barevné prostoryN/A (Database Script)
Kanály a strukturaRelational schema definitions (tables, views, indexes, foreign keys) and data INSERT rows
Max. rozměryUnbounded text length (supports multi-terabyte database dumps)
PrůhlednostNone
Streamování a progresivní načítáníStatement-by-statement transactional streaming execution

Technická srovnávací matice: SQL vs konkurence

Technický atributSQL (Aktuální)CSVJSONSQLITE
Zachování schématuKompletní schéma (tabulky, typy, cizí klíče)Pouze názvy sloupců v hlavičceStruktura dokumentu s vlastním popisemKompletní binární databázový soubor
Model prováděníSpustitelný skript DDL/DMLPasivní řádková a sloupcová dataPasivní strom dokumentuPřímý binární dotaz B-stromu
StandardizaceStandard ISO/IEC 9075RFC 4180RFC 8259Otevřený formát souborů SQLite
Dato-vazební vztahyPlná omezení cizích klíčůPloché tabulkové (bez vztahů)Vnořené objekty rodič-potomekPlná relační omezení

Běžné režimy poškození a příručka pro obnovení v hex

Import databáze selže s chybou „ERROR: syntax error at or near...".

Hlavní příčina: Neshoda dialektů SQL (např. import výpisu MySQL s opačnými uvozovkami do PostgreSQL) nebo neošetřené jednoduché uvozovky.

Obnovení: Převeďte a sanitujte syntaxi dialektu pomocí nástroje File2File Database Transpiler.

Bezpečnostní analýza a vektory útoků na parser

Spouštění nedůvěryhodných skriptů SQL může způsobit katastrofální injekci SQL, zápis do libovolných souborů nebo eskalaci administrátorských oprávnění.

Známé vektory útoků

  • Injekce SQL (SQLi) provádějící neplánované administrativní příkazy (např. DROP TABLE, GRANT ALL).
  • Čtení/zápis libovolných souborů na serveru prostřednictvím příkazů „COPY ... FROM PROGRAM" nebo „LOAD DATA INFILE".
  • Odpojení služby (DoS) prostřednictvím neindexovaných rekurzivních společných tabulkových výrazů (CTE).

Doporučené bezpečnostní postupy:

Historický vývoj a milníky

2023Vydána norma ISO/IEC 9075:2023, která do standardního SQL integrovat dotazy nad vlastnostními grafy (SQL/PGQ).
1986ANSI a ISO přijímají SQL jako oficiální standard pro systémy řízení relačních databází.
1974Donald Chamberlin a Raymond Boyce vyvíjejí v IBM Research jazyk SEQUEL na základě relačního modelu Edgara F. Codda.

Klíčové výhody a přednosti

  • Nezpochybnitelný globální standard pro podnikové ukládání dat: kompatibilní s PostgreSQL, MySQL, SQLite, Oracle a SQL Server.
  • Úplná relační věrnost: obnovuje tabulky, primární klíče, cizí klíče, omezující podmínky a indexy společně s daty.
  • Transakční provádění: příkazy lze spouštět uvnitř transakcí (BEGIN...COMMIT), což zaručuje atomické obnovení databáze.

Technická omezení a nevýhody

  • Nekompatibilita dialektů: drobné rozdíly v syntaxi (např. AUTO_INCREMENT vs. SERIAL vs. AUTOINCREMENT) vyžadují překlad mezi jednotlivými databázovými stroji.
  • Obrovská textová režie: příkazy prostého textu SQL INSERT zabírají výrazně více místa než binární databázové úložiště.
  • Pomalé časy importu u obrovských, několik gigabajtů velkých databázových výpisů bez zakázaného opětovného sestavování indexů.

Zajímavé technické drobnosti

  • SQL se původně jmenovalo „SEQUEL" (Structured English Query Language), ale kvůli sporům o ochrannou známku s leteckou společností Hawker Siddeley bylo zkráceno na SQL.
  • Formální norma ISO doporučuje vyslovovat jej jako jednotlivá písmena „S-Q-L", ale miliony vývojářů jej hovorově vyslovují jako „sikvel".
  • Odhaduje se, že SQLite, která běží na syntaxi SQL, je nainstalována na více než 1 bilionu zařízení po celém světě.

Často kladené technické otázky

Co je to soubor .sql?

Soubor .sql je prostý textový skript obsahující příkazy SQL, které vytvářejí tabulky, vytvářejí vztahy a vkládají řádky dat do relační databáze.

Mohu převést soubory výpisu SQL do formátu CSV nebo JSON?

Ano. File2File.app dokáže analyzovat soubory výpisu databáze .sql a exportovat tabulky přímo do čistých tabulek CSV nebo strukturovaných dokumentů JSON.

Proč můj soubor MySQL .sql nefunguje v PostgreSQL?

Různé databázové systémy mají své vlastní odlišnosti v dialektech (jako jsou datové typy a uvozovky). Při migraci mezi databázovými enginy musíte syntaxi specifickou pro daný dialekt transkódovat.