|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
Добрый день, уважаемые коллеги! Есть проект, в котором в качестве СУБД используем FB 2.5. Рассматриваем переход с FB 2.5 на FB 3.0. В процессе тестирования возникло ряд проблем, а именно ряд sql-запросов, прекрасно работающие в FB 2.5, не выполняются в FB 3.0. 1. В частности, запрос такого типа: Код: sql 1. 2. 3. 4. 5.
выдается ошибка Код: sql 1. 2. 3.
хотя поля key_id хранимая процедура возвращает 2. Другой тип проблемного запроса: Код: sql 1. 2. 3. 4. 5.
выдается ошибка Код: sql 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 12:44 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
Firebird 3 запрещено смешивать явные и неявные join. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 12:46 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
Hello, Dimitry Sibiryakov! You wrote on 15 мая 2017 г. 12:52:11: Dimitry Sibiryakov> Firebird 3 запрещено смешивать явные и неявные join.о! наконец-то, шеф! (С) м/ф "Приключения капитана Врунгеля" (1980) Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 12:55 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
Класс! и как быть? что посоветуете? переписывать все запросы (а если их сотня)... мммм.. неее.. Не понятно почему в FB3 не оставили к sql-запросам прежней версии FB2.5 совместить ну или хотя бы внести поддержку некого SQL Dialect 4, работающий по новым правилам. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 12:57 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
AlxEthereum Код: sql 1. 2.
Не вижу sp в данном join Про смешивание явных и неявных join уже ответили ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 12:57 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
Hello, Alxethereum! You wrote on 15 мая 2017 г. 12:58:25: Alxethereum> *что посоветуете?* переписывать все запросы (а если их сотня)... мммм.. неее..жизнь - говно. но мы привыкли... (С) Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 12:58 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
Как наименее болезненно и быстро решить подобные проблемы с запросами? Выковыривать из проекта - большой гемор.. (тем более, если запросов много динамических). ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:03 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
имхо, тут программист нужен. (С) Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:05 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
AlxEthereumКак наименее болезненно и быстро решить подобные проблемы с запросами? Забыть про Firebird 3, раз уж умудрились сваять такой кривой проект. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:09 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
Спасибо, за совет! Очччень помог. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:11 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
Hello, Alxethereum! You wrote on 15 мая 2017 г. 13:12:11: Alxethereum> Спасибо, за совет! Очччень помог. ну, ты заходи... если шо.. (С) Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:12 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
AlxEthereum, надо было сразу писать нормальные запросы. Про кривость смешивания явных и неявных джойнов было сказано ещё лет 15 назад. Это категорически не рекомендовалось, но кто-то пропускал советы мимо ушей. Теперь это запретили, о чём говорится в Release Notes. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:13 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
Не, я, конечно, могу опять начинать рассказывать про плавную миграцию при помощи мультимастер репликации, но если вы такого наворотили в приложении, то база, я подозреваю, и вовсе невменяема. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:14 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
Вы пишите, что в FB3 запретили соединять явные и неявные join. А как быть тогда с таким запросом - он в FB3 выполняется (всего лишь поменял местами ХП с таблицей - join'a не добавлял и работает... что-то напоминает из серии "наполовину беременная" . Код: sql 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:18 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
AlxEthereum Код: sql 1. 2.
Потому что тут в join есть sp Хватит упираться, начинай работать :) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:21 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
AlxEthereum, Цитата из документации Смешивание явного и неявного соединения Смешивание явных и неявных соединений не рекомендуется, но позволяется. Некоторые виды смешивания запрещены в Firebird. Например, такой запрос вызовет ошибку "Column does not belong to referenced table" Код: sql 1. 2. 3. 4. 5.
Это происходит потому, что явный JOIN не может видеть таблицу TA. Однако следующий запрос будет выполнен без ошибок, поскольку изоляция не нарушена. Код: sql 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:22 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
AlxEthereumВыковыривать из проекта?Да. Причем собственно версия 3 здесь влияет мало, сам запрос не читаем, сопровождать муторно. Сам повыпилил кучу такого Г****, но точно не все(засели гады, аки партизаны) и вроде бы не падает на тестовом сервере с трешкой. Dimitry SibiryakovFirebird 3 запрещено смешивать явные и неявные join.Я бы не был столь категоричен, ниже пример того, как писать не надо, но тем не менее на трешке оно сработало: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:24 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
Ivan_Pisarevsky, ДЕ как-то пояснял мне какие именно смешения запрещены. В примере выше это видно ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:27 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
AlxEthereum, смешения выпилить это ещё пол дела. Лучше вообще все неявные джойны повыпиливать. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:29 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
Симонов ДенисДЕ как-то пояснял мне какие именно смешения запрещены.Мой пример адресован ДСу, как пример опровергающий его заявление. Пример кандидат на переписывание, как только мои шаловливые ручонки до него дотянутся. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:32 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
hvlad...Потому что тут в join есть sp Народ здесь пишет, что в FB3 запретили явные и неявные join смешивать. Если внимательно посмотрим на запросы ниже у обоих есть смешивания явного и неявного join, но один в FB3 работает, а другой нет. не работает (ошибка SQL error code = -206. Column unknown. sel.key_id Код: sql 1. 2. 3. 4. 5.
работает: Код: sql 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:35 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
AlxEthereum, я для кого выше доку цитировал? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:36 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
Симонов Денис..я для кого выше доку цитировал? Доки это хорошо, но если здесь утверждают, что в FB3 запретили явные и неявные join смешивать, то почему 2ой пример выше работает в FB3? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:37 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
AlxEthereumНарод здесь пишет, что в FB3 запретили явные и неявные join смешивать.Уже всё расжевали. Неужели что-то осталось не понятно ? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:38 |
|
FB 3.0 проблемы в выполнении sql-запросов, прекрасно работающие в FB 2.5
|
|||
---|---|---|---|
#18+
AlxEthereumНарод здесь пишет, что в FB3 запретили явные и неявные join смешивать.Народ в лице ДСа малёху погорячился. Явного и однозначного запрета нет, но так писать все равно не надо. Оно и на двойке иной раз "уходило в себя" с подобными запросами, пример правда навскидку не приведу, но переписывал нечто подобное. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2017, 13:39 |
|
|
start [/forum/topic.php?fid=40&fpage=45&tid=1561589]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
49ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 164ms |
0 / 0 |