SQL дъмп (.sql)

ISO/IEC Стандарт

SQL скриптът е текстов файл с инструкции за база данни, например CREATE TABLE, INSERT и SELECT. Диалектите на SQL се различават, затова преди изпълнение проверете дали целевата база данни поддържа синтаксиса на скрипта.

Конвертиране от SQLITE към SQL

Безплатен конвертор от SQLITE към SQL в браузъра. Конвертирайте файлове незабавно на вашето устройство.

Проверка и метаданни

Операционните системи и файловите анализатори идентифицират SQL файлове чрез проверка на началната двоична байтова последователност:

Изберете или пуснете файлове тук

Поверително - файловете никога не напускат устройството ви

или поставете Ctrl+V
Гаранция за поверителност с нулево мрежово предаване: 0 байта са качени на външни сървъри. Цялата обработка се извършва локално в пясъчниците на вашия браузър.

Байтов подпис на заглавката (сигнатурни байтове)

Операционните системи и файловите анализатори идентифицират 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 (Текущ)CSVJSONSQLITE
Запазване на схематаПълна схема (таблици, типове, външни ключове)Само имена на колони в заглавния редСамоописваща се структура на документПълен двоичен файл на база данни
Модел на изпълнениеИзпълним DDL/DML скриптПасивни данни в редове и колониПасивно дърво на документиДиректна двоична заявка по B-дърво
СтандартизацияСтандарт ISO/IEC 9075RFC 4180RFC 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 скриптове директно на производствени сървъри за бази данни; проверявайте и почиствайте заявките в изолирани тестови среди.

Исторически произход и етапи

2023Пуснат е ISO/IEC 9075:2023, който интегрира заявки за графи от свойства (SQL/PGQ) в стандартния SQL.
1986ANSI и ISO приемат SQL като официален стандарт за системи за управление на релационни бази данни.
1974Доналд Чембърлин и Реймънд Бойс разработват SEQUEL в IBM Research въз основа на релационния модел на Едгар Ф. Код.

Основни предимства

  • 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