SQL kopija (.sql)
ISO/IEC StandartinisStruktūrizuotų užklausų kalbos skriptas (SQL) yra universalus reliacinių duomenų bazių formatas, kurį sudaro deklaratyvūs DDL teiginiai duomenų bazių lentelėms kurti ir DML INSERT teiginiai duomenims įrašyti.
Konvertuoti SQLITE į SQL
Nemokamas SQLITE į SQL konverteris naršyklėje. Konvertuokite failus akimirksniu savo įrenginyje.
Tikrinti ir metaduomenys
Operacinės sistemos ir failų analizatoriai atpažįsta SQL failus tikrindami pradinę dvejetainę baitų seką:
Baitų lygio antraštės parašas (magiškieji baitai)
Operacinės sistemos ir failų analizatoriai atpažįsta SQL failus tikrindami pradinę dvejetainę baitų seką:
ŠEŠIOLIKTAINIS PARAŠAS (POSLINKIS 0):
2D 2D 20 / 43 52 45 41 54 45ASCII ATVAIZDAVIMAS: -- / CREATE
Standartizacija: ISO/IEC 9075:2023 / ANSI SQL Standard
Techninės specifikacijos
| Konteinerio architektūra | Unicode plain text script containing Data Definition Language (DDL) and Data Manipulation Language (DML) statements |
| Glaudinimas | Uncompressed plaintext (frequently compressed as .sql.gz or .sql.zst) |
| Baitų seka (Endianness) | UTF-8 / Unicode text stream |
| Spalvų erdvės | N/A (Database Script) |
| Kanalai ir struktūra | Relational schema definitions (tables, views, indexes, foreign keys) and data INSERT rows |
| Maksimalūs matmenys | Unbounded text length (supports multi-terabyte database dumps) |
| Skaidrumas | None |
| Srautas ir progresyvusis įkėlimas | Statement-by-statement transactional streaming execution |
Techninė palyginimo matrica: SQL vs konkurentai
| Techninis atributas | SQL (Dabartinis) | CSV | JSON | SQLITE |
|---|---|---|---|---|
| Schemos išsaugojimas | Pilna schema (lentelės, tipai, išoriniai raktai) | Tik antraštės stulpelių pavadinimai | Savarankiškai aprašoma dokumento struktūra | Pilnas dvejetainis duomenų bazės failas |
| Vykdymo modelis | Vykdomasis DDL/DML skriptas | Pasyvūs eilutės-stulpelio duomenys | Pasyvus dokumentų medis | Tiesioginė dvejetainė B-medžio užklausa |
| Standartizavimas | ISO/IEC 9075 standartas | RFC 4180 | RFC 8259 | SQLite atviras failo formatas |
| Duomenų ryšiai | Pilni išorinio rakto apribojimai | Plokščioji lentelė (be ryšių) | Įdėti tėvo-vaiko objektai | Pilni reliaciniai apribojimai |
Dažni sugadinimo režimai ir šešioliktainio atkūrimo vadovas
Duomenų bazės importavimas nepavyksta su klaida „ERROR: syntax error at or near...".
Pirminė priežastis: SQL dialekto neatitikimas (pvz., MySQL atvirkštinių kabučių archyvo importavimas į PostgreSQL) arba neištrintos viengubos kabutės.
Atkūrimas: Konvertuokite ir išvalykite dialekto sintaksę naudodami „File2File Database Transpiler".
Saugumo analizė ir analizatoriaus atakos vektoriai
Nepatikimų SQL skriptų vykdymas gali sukelti katastrofiškas SQL injekcijas, savavališką failų įrašymą arba administracinių teisių eskalavimą.
Žinomi atakos vektoriai
- SQL injekcijos (SQLi), vykdančios nenumatytas administracines komandas (pvz., DROP TABLE, GRANT ALL).
- Savavališkas serverio failų skaitymas/rašymas per „COPY ... FROM PROGRAM" arba „LOAD DATA INFILE".
- Paslaugos trikdžiai per neindeksuotas rekursines bendras lentelių išraiškas (CTE).
Geriausia apsaugos praktika:
Istorinė kilmė ir svarbiausi etapai
Pagrindiniai privalumai
- Ginčytinas pasaulinis įmonių duomenų saugojimo standartas: suderinamas su PostgreSQL, MySQL, SQLite, Oracle ir SQL Server.
- Pilnas reliacinis tikslumas: kartu su duomenimis atkuria lenteles, pirminius raktus, išorinius raktus, apribojimus ir indeksus.
- Tranzakcinis vykdymas: teiginiai gali būti vykdomi tranzakcijose (BEGIN...COMMIT), garantuojant atominį duomenų bazės atkūrimą.
Techniniai apribojimai ir trūkumai
- Dialektų nesuderinamumas: smulkūs sintaksės skirtumai (pvz., AUTO_INCREMENT vs SERIAL vs AUTOINCREMENT) reikalauja konvertavimo tarp duomenų bazių variklių.
- Didelės teksto sąnaudos: paprasti SQL INSERT teiginiai užima žymiai daugiau vietos nei dvejetainis duomenų bazės saugojimas.
- Lėtas importavimo laikas didžiuliuose daugelio gigabaitų duomenų bazių archyvuose, jei neišjungtas indeksų perstatymas.
Įdomūs techniniai faktai
- SQL iš pradžių vadinosi „SEQUEL" (Structured English Query Language), bet buvo sutrumpintas iki SQL dėl prekių ženklo ginčo su „Hawker Siddeley" orlaivių kompanija.
- Formalus ISO standartas jį taria kaip atskiras raides „S-Q-L", tačiau milijonai kūrėjų šnekamojoje kalboje jį vadina „sequel".
- Apskaičiuota, kad SQLite, veikianti SQL sintaksės pagrindu, įdiegta daugiau nei 1 trilijone įrenginių visame pasaulyje.
Dažniausiai užduodami techniniai klausimai
Kas yra .sql failas?
.sql failas yra paprasto teksto scenarijus, kurio sudėtyje yra SQL komandos, sukuriančios lenteles, nustatančios ryšius ir įterpiančios duomenų eilutes į reliacinę duomenų bazę.
Ar galiu konvertuoti SQL iškelties (dump) failus į CSV arba JSON?
Taip. File2File.app gali išanalizuoti .sql duomenų bazės iškelties failus ir eksportuoti lenteles tiesiai į švarius CSV skaičiuotuvus arba struktūrizuotus JSON dokumentus.
Kodėl mano MySQL .sql failas neveikia PostgreSQL?
Skirtingos duomenų bazės sistemos turi patentuotų dialekto skirtumų (pvz., duomenų tipų ir kabučių perkėlimo). Migruojant tarp duomenų bazės variklių, turite konvertuoti konkrečiam dialektui būdingą sintaksę.
Susijusios SQL konvertavimo poros
SQLite duomenų bazės failo konvertavimas į SQL išklotinės tekstinį scenarijų paverčia dveinarę duomenų bazę skaitomomis teksto komandomis, kad būtų lengva perkelti duomenų bazę ir importuoti į serverį.
SQL kopijos tekstinio skripto konvertavimas į JSON duomenų eksportą paverčia nelanksčias reliacinės duomenų bazės lenteles į lanksčius, įdėtinius objektus šiuolaikinėms žiniatinklio programoms.
Transformuokite reliacinės duomenų bazės atsarginių kopijų scenarijus į tiesias lentelės formato skaičiuokles, skirtas paprastai duomenų analizei ir ataskaitų teikimui.
Konvertuojant dvejetainę duomenų bazės atsarginę kopiją į paprasto teksto SQL scenarijų, galima perkelti duomenų bazės lenteles ir duomenis tarp visiškai skirtingų duomenų bazės variklių.
Konvertuojant nesuglaudintą paprasto teksto SQL scenarijų į optimizuotą gimtąją duomenų bazės atsarginės kopijos bylą, sumažėja saugyklos dydis ir pagreitėja serverio atkūrimo laikas.