Какие различия синтаксиса SQL-запросов MySQL от Firebird?

Итак, собственно, суть вопроса такова: есть три различные базы на FireBird, одна база на PostgreSQL и маленькая база MySQL.
В FB хранится телефонный трафик, Postges хранить трафик интернета, а связывает его CRM с базой на MySQL. Да недавнего времени была реализована подгрузка данных в CRM из Postgres, так как я знаю различия MySQL и PostgreSQL, сваял класс для преобразования запросов мускульных в постгрес, так как мускульные запросы знаю ну оооочень давно, да проще они, роднее. Но теперь появилась необходимость еще и прикрутить FB. Столкнулся с тем, что она вообще не переваривает обратных кавычек, своеобразный LIMIT да и структура процедур и триггеров вообще кардинально отличаются.
Есть ли какие-то мануалы, ресурсы или просто инфа, где можно посмотреть все эти отличия, либо написать их краткий список.
Заранее благодарю за ответ!

PS: в гугле не забанили, единственное, что нарыл - https://scott.yang.id.au/2004/01/limit-in-select-s..., а на офф. сайте есть только документация по языку на русском даже, 516 страниц, но мне нужны именно отличия

PPS: нашел на офф. сайте PDF: Переход с СУБД MS-SQL на СУБД Firebird
  • Вопрос задан
  • 1189 просмотров
Пригласить эксперта
Ответы на вопрос 1
Wolfnsex
@Wolfnsex
Если не хочешь быть первым - не вставай в очередь!
Я точно не помню уже, давно с FB работал... Но, из всех известных мне SQL-БД -- MySQL единственная база, из тех, что изобрели "Свой SQL с блекджеком и... своим форматом LIMIT'а".

Вот, нашел цитату, касательно FireBird 1.5:
Firebird полностью поддерживает SQL-92 Entry Level 1 и реализует большую часть стандарта SQL-99 c некоторыми очень полезными дополнениями. Это включает выражения DML/DDL, синтаксис объединений FULL/LEFT/RIGHT [OUTER] JOIN, выражения UNION, DISTINCT, подзапросы (IN, EXISTS), встроенные функции (AVG, SUM, MIN, MAX, COALESCE, CASE, ..), ограничения целостности (PRIMARY KEY, UNIQUE, FOREIGN KEY), и все общие типы данных SQL.


Следуя выше написанному, и тому, что Postgres так же реализует большую часть этих стандартов, запросы должны работать и в FireBird и в Postgres, практически без изменений. Кроме того, насколько я помню, в FireBird (по крайней мере так было в версиях 1.5 и 2.х) так же как и в Postgres используются "последовательности", вместо MySQL'евского AUTOINCREMENT'а.

Подводя итог, хочу сказать, что Вам нужно искать не то, чем синтаксис FireBird'а отличается от MySQL'евского, а то, чем MySQL'евский-SQL отличается от стандартов SQL.

своеобразный LIMIT
-- LIMIT/OFFSET? Если Вы про него, то это не "своеобразный" LIMIT, это LIMIT в соответствии со стандартами, LIMIT через запятую - это изобретение авторов MySQL'я.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы