SQL дъмп (.sql)
ISO/IEC СтандартSQL скриптът е текстов файл с инструкции за база данни, например CREATE TABLE, INSERT и SELECT. Диалектите на SQL се различават, затова преди изпълнение проверете дали целевата база данни поддържа синтаксиса на скрипта.
Конвертиране от SQLITE към SQL
Безплатен конвертор от SQLITE към SQL в браузъра. Конвертирайте файлове незабавно на вашето устройство.
Проверка и метаданни
Операционните системи и файловите анализатори идентифицират SQL файлове чрез проверка на началната двоична байтова последователност:
Байтов подпис на заглавката (сигнатурни байтове)
Операционните системи и файловите анализатори идентифицират SQL файлове чрез проверка на началната двоична байтова последователност:
HEX ПОДПИС (ОФСЕТ 0):
Няма фиксиран подпис (SQL е обикновен текст)ASCII ПРЕДСТАВЯНЕ: Няма фиксиран подпис
Стандартизация: ISO/IEC 9075:2023 / ANSI SQL Standard
Технически спецификации
| Контейнерна архитектура | Текстов скрипт в Unicode с инструкции за дефиниране на данни (DDL) и манипулиране на данни (DML) |
| Компресия | Некомпресиран обикновен текст (често се компресира като .sql.gz или .sql.zst) |
| Поредност на байтовете (Endianness) | Текстов поток в UTF-8 / Unicode |
| Цветови пространства | Неприложимо (скрипт за база данни) |
| Канали и структура | Дефиниции на релационни схеми (таблици, изгледи, индекси, външни ключове) и редове с данни INSERT |
| Максимални размери | Неограничена дължина на текста (поддържат се архиви на бази данни с размер от няколко терабайта) |
| Прозрачност | Няма |
| Поточно предаване и прогресивно зареждане | Поточно изпълнение на транзакции, инструкция по инструкция |
Техническа сравнителна матрица: SQL спрямо конкуренти
| Технически атрибут | SQL (Текущ) | CSV | JSON | SQLITE |
|---|---|---|---|---|
| Запазване на схемата | Пълна схема (таблици, типове, външни ключове) | Само имена на колони в заглавния ред | Самоописваща се структура на документ | Пълен двоичен файл на база данни |
| Модел на изпълнение | Изпълним DDL/DML скрипт | Пасивни данни в редове и колони | Пасивно дърво на документи | Директна двоична заявка по B-дърво |
| Стандартизация | Стандарт ISO/IEC 9075 | RFC 4180 | RFC 8259 | Формат за отворен файл на SQLite |
| Връзки между данните | Пълни ограничения за външни ключове | Плоска таблична структура (без връзки) | Вложени обекти от тип родител-дете | Пълни релационни ограничения |
Често срещани видове повреди и ръководство за възстановяване на шестнадесетични данни
Импортирането на базата данни се проваля с грешка 'ERROR: syntax error at or near...'.
Първопричина: Несъответствие на SQL диалекта (напр. импортиране на дъмп с обратни кавички на MySQL в PostgreSQL) или неекранирани единични кавички.
Възстановяване: Конвертирайте и санирайте синтаксиса на диалекта с помощта на File2File.app Database Transpiler.
Анализ на сигурността и вектори на атака към парсера
Изпълнението на ненадеждни SQL скриптове може да доведе до катастрофално SQL инжектиране, произволно записване на файлове или ескалация на административни привилегии.
Известни вектори на атака
- SQL инжекция (SQLi), изпълняваща непредвидени административни команди (напр. DROP TABLE, GRANT ALL).
- Произволно четене/запис на сървърни файлове чрез 'COPY ... FROM PROGRAM' или 'LOAD DATA INFILE'.
- Отказ от услуга чрез неиндексирани рекурсивни общи таблични изрази (CTEs).
Най-добри практики за защита: Никога не изпълнявайте ненадеждни SQL скриптове директно на производствени сървъри за бази данни; проверявайте и почиствайте заявките в изолирани тестови среди.
Исторически произход и етапи
Основни предимства
- SQL скриптовете могат да дефинират таблици, да добавят редове и да правят заявки към релационни бази данни. Синтаксисът за типове данни, колони с автоматично генерирани стойности и функции за дати се различава между SQLite, MySQL, PostgreSQL и SQL Server.
- Пълно запазване на релационната структура: възстановява таблици, първични ключове, външни ключове, ограничения и индекси заедно с данните.
- Транзакционно изпълнение: изявленията могат да се изпълняват в рамките на транзакции (BEGIN...COMMIT), за да се гарантира атомарно възстановяване на базата данни.
Технически ограничения и минуси
- Несъвместимости между диалектите: фини разлики в синтаксиса (напр. AUTO_INCREMENT срещу SERIAL срещу AUTOINCREMENT) изискват преобразуване между системите за бази данни.
- Значителен допълнителен обем текст: обикновените SQL INSERT изявления заемат значително повече място от двоичното съхранение в база данни.
- Бавно импортиране на масивни дъмпове на бази данни с размер от няколко гигабайта, ако повторното изграждане на индексите не е изключено.
Интересни технически факти
- Първоначално SQL се казва 'SEQUEL' (Structured English Query Language), но е съкратен на SQL поради спор за търговска марка с авиокомпанията Hawker Siddeley.
- Според официалния стандарт на ISO съкращението се произнася като отделни букви 'S-Q-L', но милиони разработчици го произнасят разговорно като 'сиквел'.
- Смята се, че над един трилион бази данни SQLite се използват активно в телефони, компютри и други продукти.
Често задавани технически въпроси
Какво представлява .sql файлът?
Файлът .sql представлява обикновен текстов скрипт, съдържащ SQL команди, които създават таблици, установяват връзки и въвеждат редове с данни в релационна база данни.
Мога ли да конвертирам SQL дъмпове в CSV или JSON?
Да. File2File.app може да анализира файлове с дъмпове на .sql бази данни и да експортира таблиците директно в чисти CSV електронни таблици или структурирани JSON документи.
Защо моят MySQL .sql файл не работи в PostgreSQL?
Различните системи за бази данни имат специфични разлики в диалектите (като типове данни и ескейпване на кавички). Трябва да преобразувате синтаксиса, специфичен за съответния диалект, когато мигрирате между системи за бази данни.
Свързани двойки за конвертиране на SQL
Конвертирането на файл с SQLite база данни в текстов SQL скрипт преобразува двоична база данни в четими текстови команди за лесно прехвърляне на данни и импортиране в сървъри.
Конвертирането на текстов скрипт с SQL файл с команди в JSON експорт преобразува таблиците на релационни бази данни в гъвкави, вложени обекти за съвременни уеб приложения.
Преобразувайте скриптове за архивиране на релационни бази данни в таблични електронни таблици за опростен анализ на данни и отчетност.
Конвертирайте поддържан архив на SQL Server във формат .bak в текстов SQL скрипт за преглед или използване в процес на миграция.
Конвертирането на некомпресиран SQL скрипт в оптимизиран собствен формат за архивиране на база данни намалява необходимото място за съхранение и ускорява възстановяването на сървъра.