|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Добрался таки до попытки переноса базы с IB 7.1 на FB 2.5. Грохнул все метаданные, кроме таблиц, сделал бекап-ресторе. Для восстановления метаданных решил воспользоваться простейшим способом - сравнением в IBExpert. И тут посыпались ошибки. Оказывается, если в процедуре нету suspend то в 2.5 из нее нельзя сделать select. Поскольку IBExpert сначала создает alter все процедуры с пустым телом, а потом делает alter, на select-ах из "неправильных" процедур летят ошибки - их не дает создать. Дело в том, что "устаревшая версия" IBExpert-а не работает корректно. И даже не в том, что стандартный в общем то способ изменения процедур, у которых есть зависимости перестал работать - теперь надо suspend добавлять вручную в конец а потом удалять. Зачем и кому надо усложнять работу программиста? Главное - ни от чего эта проверка не спасает. Из такой процедуры select делать не дает: CREATE PROCEDURE A RETURNS ( ID INTEGER) AS begin exit; end А из такой дает CREATE PROCEDURE A RETURNS ( ID INTEGER) AS begin if (1=0) then suspend; else exit; end И кто вообще сказал, что из процедур, которые могут ничего не вернуть нельзя делать select? А если можно, то почему нельзя делать select из пустых? Если из пустых таблиц можно, почему из пустых процедур нельзя? Что это за маразм на ровном месте? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 13:11 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Hello, Eugenebar! You wrote on 24 мая 2016 г. 13:23:08: Eugenebar> Что это за маразм на ровном месте? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 13:24 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Надеюсь, модератор удалит спам от "Идущего в.." Модератор: Модератор поставит галочку у себя в чОрном блокнотике насчёт твоих ".." Картинка модератору нравится. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 13:34 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarА если можно, то почему нельзя делать select из пустых? Потому, что они не содержат ключевое слово suspend, которое в теле селективных процедур должно быть (но не обязано, как видно из первого примера). ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 13:45 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
rdb_devПотому, что они не содержат ключевое слово suspend Это как-то мешает серверу возвращать пустой набор данных?.. PS: Насколько я помню, данное поведение появилось в целях заботы о мозгах кретинов, которые не понимали, почему им этот самый пустой набор данных возвращается. И является примером случая, когда забота о кретинах вредит всем, включая самих кретинов. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 13:59 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
rdb_dev, я понял "принцип" проверки. Но это маразм. С чего то кто-то вдруг решил делить процедуры на два класса, при этом по весьма сомнительному критерию. Селективная процедура, которая ничего не возвращает, это аналог пустой таблицы или пустого view. Если уж захотели делать два вида процедур, то надо было делать это явно - с изменением синтаксиса объявления процедуры. Какой-нибудь "create procedure for select". Правда, непонятно, зачем это вообще нужно и кому. Никаких ошибок с "забыл suspend" в длинной сложной процедуре не предотвращает, зато усложняет жизнь с изменением зависимых процедур. Пустой select допустим в любом месте, сделовательно должен быть допустим select из процедуры, которая не вызывает suspend, следовательно и пустая процедура тоже должна быть допустима! ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 14:00 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarrdb_dev, я понял "принцип" проверки. Но это маразм. С чего то кто-то вдруг решил делить процедуры на два класса, при этом по весьма сомнительному критерию? BY DESIGN ТЧК ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 14:04 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBar, два варианта: 1. Просить в трекере чтобы отменили ограничения на select из процедур без suspend 2. Просить IbExpert чтобы вместо exit в процедуры болванки у которых есть RETURNS писал suspend. И ещё. Раз уж переходишь с IB 7.1 то почему на 2.5, а не сразу на 3.0? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 14:06 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarДело в том, что "устаревшая версия" IBExpert-а не работает корректно. Свежую и бесплатную версию (для тех, у кого в ОС используется кодовая страница WIN1251) найдешь здесь: Инструменты администратора и разработчика БД ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 14:09 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarДобрался таки до попытки переноса базы с IB 7.1 на FB 2.5. Грохнул все метаданные, кроме таблиц, сделал бекап-ресторе. перевод делается не так: - извлекается скрипт - правится (ИБ 7 в скрипте isql тоже ошибки выдает) - проверяется на фб 2.5, правится - данные переливаются из ИБ в ФБ. - проверяются запросы. Собственно, ограничений по кривому SQL и другим вещам в ФБ по сравнению с ИБ довольно много. Так что запрет на "неселективные процедуры" - это еще цветочки (для тебя). ИБ и ФБ разъехались уже давно, в первую очередь по SQL, так что "автоматическую" миграцию с ИБ на ФБ (или обратно) никто не обещал. ФБ 2.5 свои селективные процедуры isql-ом корректно в скрипт сохраняет, с suspend вместо exit. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 14:11 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
ИБ и ФБ разъехались уже давно, в первую очередь по SQL И много там еще сомнительных фич для "облегчения жизни кретинам", осложняющих всем жизнь? Есть ли разночтения со стандартом SQL "by design"? Такие что простые запросы выполняться не будут? ограничений по кривому SQL С точки зрения теории реляционных баз данных и SQL селект из пустой процедуры - не кривой. Кривой - его запрет, сделанный к тому же кривым способом. перевод делается не так: Да какая разница? Тут главное данные перезалить, чтобы 6 гигов каким-нибудь data-pipe полдня не качать. Понятно, что и новый ibexpert можно скачать, и руками поправить. Но сам маразм "решения" поражает! Если за 5 минут вылезло это, что вылезет дальше? BY DESIGN ТЧК Это ответ не для мыслящего человека, а для кретина. Я не кретин. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 14:51 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarТут главное данные перезалить, чтобы 6 гигов каким-нибудь data-pipe полдня не качать Жалкие шесть гигов должны перекачаться за считанные минуты на приличном железе. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 14:54 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Hello, Eugenebar! You wrote on 24 мая 2016 г. 14:53:50: Eugenebar> С точки зрения теории реляционных баз данных и SQL селект из пустой процедуры... ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 14:56 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarЯ не кретин. Тогда почему ты решил, что перевод БД и приложения с одной СУБД на другую должен быть простым делом, которое тебе по плечу?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 14:57 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarЕсть ли разночтения со стандартом SQL "by design"? Есть ли разночтения со стандартом ANSI SQL? Подобный риторический вопрос - крайне неудачная шутка. Приведи мне пример реальной RDBMS, полностью соответствующей хотя бы ANSI SQL '92. EugeneBarЕсли за 5 минут вылезло это, что вылезет дальше? Кто сказал, что миграция с одной платформы на другую, при их лишь частичной совместимости, это легко? Интересно, что ты "запоешь", наткнувшись на обращение к таблицам TMP(IB)/MON(FB)... ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 15:04 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Мешать реляционные БД, процедуры и стандарт SQL в одну кучу, и делать свои выводы - не хорошо. И кстати, шаблоны создания процедур (и вообще всего) в IBExpert настраиваются. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 15:04 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, речь идет даже не сложности или простоте перехода, а о маразматичности этого запрета на селект из пустых процедур. с одной СУБД на другую Не разные СУБД, а разные версии одной CУБД. Или ты хочешь сказать, что 2.5 про сравнению со, скажем 1.5 это все равно что какой-нибудь Oracle или MS SQL? Жалкие шесть гигов должны перекачаться за считанные минуты на приличном железе. Это не нужно - через ресторе данные перенеслись. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 15:07 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarДобрался таки до попытки переноса базы с IB 7.1 на FB 2.5. EugeneBarНе разные СУБД, а разные версии одной CУБД. Interbase и Firebird это разные СУБД. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 15:10 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarИли ты хочешь сказать, что 2.5 про сравнению со, скажем 1.5 это все равно что какой-нибудь Oracle или MS SQL?Собственно, очень многое переработано за 5 лет между ними. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 15:15 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarИ много там еще сомнительных фич для "облегчения жизни кретинам", осложняющих всем жизнь? см. файл README.incompatibilities.txt в папке установки, /doc/ правда, у 2.5 там несовместимости между 2.х и 2.5 описаны, так что, придется тебе еще копать релизноты от 1.5, 2.0 и 2.1 EugeneBarЕсть ли разночтения со стандартом SQL "by design"? Такие что простые запросы выполняться не будут? видишь-ли, InterBase что в 7.5, что сейчас, допускал и допускает много идиотских запросов (по синтаксису), которые либо не соответствуют стандарту, либо выполняются не так, как должны. В Firebird такие закидоны по большей части искоренены. EugeneBarТут главное данные перезалить, чтобы 6 гигов каким-нибудь data-pipe полдня не качать. Мы делали перевод базы одной конторе, с Firebird 1.5 на Firebird 2.5. http://www.slideshare.net/mindthebird/migration-from-firebird-15-to-firebird-25 Перевод занял 4 месяца кропотливой работы. Конечно, база - базе рознь, но ты-то переходишь даже не с ФБ, а с ИБ, и надеешься обойтись одним только b/r? EugeneBarНе разные СУБД, а разные версии одной CУБД. Или ты хочешь сказать, что 2.5 про сравнению со, скажем 1.5 это все равно что какой-нибудь Oracle или MS SQL? еще раз повторяю - InterBase и Firebird уже давно разъехались не просто по формату БД, а по фичам, и особенно по SQL (Firebird). К примеру, Влад Хорсун на конференции по Firebird 2.0 читал доклад по новым фичам SQL 2.5 часа, и то не успел все рассказать. И ни одной этой фичи, насколько я в курсе, до сих пор в InterBase нет (кроме execute statement). ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 15:22 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
WildSeryСобственно, очень многое переработано за 5 лет между ними. да какие 5 лет. Отличия начались уже в InterBase 7.0 (тип boolean) и Firebird 1.5, а это 2002-2004 года, то есть уже 12 лет. to EugeneBar: отличия ФБ 2.5 от ИБ 6: http://www.firebirdsql.org/file/documentation/reference_manuals/reference_material/Firebird-2_5-LangRef-Update-Russian.pdf 364 страницы! на всякий случай отличия ФБ 1.5 от ИБ 6: http://www.firebirdsql.org/file/documentation/reference_manuals/reference_material/html/langrefupd15.html отличия ФБ 2.0 от ИБ 6: http://www.firebirdsql.org/file/documentation/reference_manuals/reference_material/html/langrefupd20.html отличия ФБ 2.1 от ИБ 6: http://www.firebirdsql.org/file/documentation/reference_manuals/reference_material/html/langrefupd21.html все ссылки дал для того чтобы оценить. Наиболее полно, конечно, изложено в отличиях 2.5. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 15:30 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
в InterBase со времен 7.х появилось, чего нет в ФБ или есть только похожее - tmp$ (в firebird аналог позже, mon$) - embedded user authentification (нечто похожее - только в Firebird 3.0) - управление кэшем БД (в Firebird 3.0 - Linger) - online dump (в ФБ 2.1 близкий аналог - nbackup) - журналирование, архивы журналов - шифрование соединения, БД и столбцов (в ФБ 3.0 - поддержка плагинов для шифрования БД, шифрование соединения) - execute statement (начиная с XE, уже давно есть в FB) - change views - распараллеливаемый суперсервер (в ФБ 3.0) ну и еще много всякой мелочи. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 15:38 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
kdv, 1. Спасибо за ответ по существу. 2. Перелопачиванием базы и программы занимаюсь давно.. Сама база сделана без особых фич, без всяких временных таблиц и других нововведений, единственно - используется rows, но его вроде как в FB 2.5 добавили. Вообще, там почти все на уровне прадедушки - IB 5. наткнувшись на обращение к таблицам TMP(IB)/MON(FB)... ;) Ничего не скажу, т. к. знаю что таких обращений в этой базе НЕТ. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 15:41 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarЕсть ли разночтения со стандартом SQL "by design"? каким ещё стандартом? Ну появились недавно ХП в стандарте, причём в некоторых СУБД они появились на 20 лет раньше. Стандарт вообще не подразумевает селективных хранимых процедур. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 15:46 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBar... речь идет даже не сложности или простоте перехода, а о маразматичности этого запрета на селект из пустых процедур. ... Так ты надеешься отменить запрет, что ли? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 15:51 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBar, я еще добавлю, что поскольку blr у ИБ и ФБ уже давно разный, никаким бэкапом-рестором с ИБ на ФБ перейти нельзя. Даже если такой б-р пройдет, вылезут проблемы с метаданными во время работы. Так что скрипт + памп. Кстати, у меня в http://www.ibase.ru/prevver/ есть раздел Переход между последними версиями InterBase и Firebird и, можно было бы попробовать извлечь скрипт из базы ИБ isql-ом от ФБ 2.5. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 15:53 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
авторТак ты надеешься отменить запрет, что ли? Почему нет? А еще я хочу понять, много ли подобного маразма в FB 2.5 и чего вообще ждать от "дальнейшего развития". Может и правда RIP, а может и нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 15:58 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBar, о... опять началось. Не надоело? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 16:00 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBar, вот опять коммент. "маразм, дальнейшее развитие в кавычках, RIP"... Тебе культурно объясняют, а ты все равно прешь буром. Какой интерес с тобой общаться, если ты при разговоре буквально поплевываешь собеседнику на ботинки? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 16:03 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarавторТак ты надеешься отменить запрет, что ли? Почему нет? А еще я хочу понять, много ли подобного маразма в FB 2.5 и чего вообще ждать от "дальнейшего развития". Может и правда RIP, а может и нет. C FB ты можешь сам сваять себе СУБД. Есть исходники.😇 ... Ну ты для начала свежую версию ибэкспета скачай. У тебя же не миллион этих процедур, правь потихоньку. Только сразу под FB 3. Потихоньку тестируй. Ну и сюда заглядывать. А то МП совсем засохнет...😀 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 16:07 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
kdv, может он засланный казачок от разработчиков конкурирующей СУБД? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 16:08 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
rdb_devkdv, может он засланный казачок от разработчиков конкурирующей СУБД? А что, есть конкурирующие СУБД, на которые можно без проблем мигрировать с IB 7.*? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 16:10 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
чччД, Оракл же! Ой, нет, процедуры придется переписывать, целиком... ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 16:12 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
чччДА что, есть конкурирующие СУБД, на которые можно без проблем мигрировать с IB 7.*? Embarcadero InterBase XE7? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 16:12 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Hello, Rdb Dev! You wrote on 24 мая 2016 г. 16:13:28: Rdb Dev> может он засланный казачок от разработчиков конкурирующей СУБД? не. просто бешеный школьник. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 16:13 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
rdb_devчччДА что, есть конкурирующие СУБД, на которые можно без проблем мигрировать с IB 7.*? Embarcadero InterBase XE7? Долгих лет такому конкуренту.😆 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 16:14 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
МимопроходящийHello, Rdb Dev! You wrote on 24 мая 2016 г. 16:13:28: Rdb Dev> может он засланный казачок от разработчиков конкурирующей СУБД? не. просто бешеный школьник. Имхо, человек просто устал. Всю ночь промучался, но не вышел каменный цветок. Пройдет. Отоспится, перелогинится и вернется нормальным мембером. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 16:18 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
> Так ты надеешься отменить запрет, что ли? Это не культурное объяснение, а хамство. Мол, ты быдло, ничего не решаешь, считаться с тобой никто не будет. И кто мне это говорит? Один "из разработчиков"? А "мимоходящий" - это другой? Если да, то слова про маразм и рип оправданы, если нет - надежда есть. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 16:22 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Мимопроходящий, так как тебя зовут, дорогой друг? Скажи мне свое ФИО, а я в ответ могу и свое сказать, если захочешь. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 16:23 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Автор уже месяц назад "пытался" мигрировать: Что нового плохого в FB 2.5 по сравнению с FB 1.5? ...😋 Неужели за месяц не нашел релизноты? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 16:28 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Дел других много, да и сюрпризы вызывают сомнения. В тот раз неприятным сюрпризом оказался баг с дублирование записей в pk, о котором я прочитал на этом форуме. Его обещали исправить. И я никак не могу понять, стоит ли вообще тратить свое время и связываться с последними версиями FB и чего от них вообще можно ожидать. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 16:46 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBar, его уже исправили в 2.5.6 и 3.0. Эх знал бы ты сколько багов в IB 7.1. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 16:50 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarrdb_dev, я понял "принцип" проверки. Но это маразм. С чего то кто-то вдруг решил делить процедуры на два класса, при этом по весьма сомнительному критерию. Селективная процедура, которая ничего не возвращает, это аналог пустой таблицы или пустого view. селективная процедура с сотней строчек кода и выходными параметрами, которая "ничего не возвращает" - для внешнего наблюдателя это скорее аналог таблицы со 100500 записями, селект из которой почему-то "ничего не возвращает". Вот чтобы они перестали биться об стену (в саппорте просто задолбали этим) и добавили проверку. Нет саспенда - нехер селектить. Пустая процедура это вырожденный частный случай, который никому не интересен. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 16:52 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarДел других много, да и сюрпризы вызывают сомнения. В тот раз неприятным сюрпризом оказался баг с дублирование записей в pk, о котором я прочитал на этом форуме. Его обещали исправить. И я никак не могу понять, стоит ли вообще тратить свое время и связываться с последними версиями FB и чего от них вообще можно ожидать. Можно остаться на старой версии сервера и обновить железо. Можно перейти на более новый InterBase (хотя, 100% совместимость и здесь вряд ли гарантирована). Здесь ты, обнаружив баг, сразу же можешь пообщаться с разработчиками, напрямую. И на следующее утро получить исправленную версию. С Embacadero/Oracle - такое возможно? ... В любом случае, переход на другой сервер СУБД обойдется дороже, чем миграция на более новый сервер IB/FB. ... Да, если тебе нужна новая фича в FB - ты можешь стимулировать ее появление денежными вливаниями. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 16:59 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
dimitr, спасибо за ответ. Возникает вопрос по "видению ситуации". Вот, скажем, одна процедура a делает select из процедуры b и сама возвращает данные. И нам оказывается добавить входной параметр в процедуру b. "В старых" версиях обычным способом было комментирование всего текста процедуры a, изменение процедуры b и раскомментирование обратно. Теперь нужно добавлять suspend в конце, чтобы закомментированная процедура не была пустой. Потом не забыть его убрать. Так и предполагается делать или предполагается другой способ? Не знаю как у кого, а у меня такое в работе встречается довольно часто, причем цепочка изменений может быть довольно длинной. Или это я просто такой тупой, а у правильным ребятам ни к чему вызывать процедуру из 10 других процедур и вдруг захотеть поменять ее параметры? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:05 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarИли это я просто такой тупой, а у правильным ребятам ни к чему вызывать процедуру из 10 других процедур и вдруг захотеть поменять ее параметры? Угу, они давно уже открыли для себя execute block. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:09 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBar"В старых" версиях обычным способом было комментирование всего текста процедуры a, изменение процедуры b и раскомментирование обратно В FB, если не ошибаюсь с 2.0, можно не заморачиваться и сделать сразу CREATE OR ALTER PROCEDURE b (с новыми параметрами) - ошибки зависимостей не будет. Будет просто неправильный blr у процедуры "a". и потом CREATE OR ALTER PROCEDURE a (которая использует "b" уже с новыми параметрами). И не надо ничего комментировать, заменять, потом раскомментировать... ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:12 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBar...одна процедура a делает select из процедуры b и сама возвращает данные. И нам оказывается добавить входной параметр в процедуру b. "В старых" версиях обычным способом было комментирование всего текста процедуры a, изменение процедуры b и раскомментирование обратно. Теперь нужно добавлять suspend в конце, чтобы закомментированная процедура не была пустой. Потом не забыть его убрать. Так и предполагается делать или предполагается другой способ? ... Можешь в "а" закомментировать строчку обращения к "б" и делать с "б" все, что угодно. Хоть с suspend, хоть без. IBExpert (не "старый", конечно) так и делает: перед изменением удаляет зависимости. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:12 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Hello, Чччд! You wrote on 24 мая 2016 г. 17:14:08: Чччд> IBExpert (не "старый", конечно) так и делает: перед изменением удаляет зависимости. и при "закомментировании" тела процедуры таки сам ставит SUSPEND. невзирая на стенания ТС, кстати. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:15 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Мимопроходящий, у него старый IBE и он всё боится перейти на новый. Вообще странный страх СУБД обновить решился, а инструмент администрирования нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:17 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
А можно сделать олдскульно и (раз уж скрипт создания всех процедур в БД всё равно хранится в СКВ) поправить сразу все процедуры как надо, а потом тупо прогнать последовательно два скрипта: полного их сноса и создания. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:18 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
YuRockEugeneBar"В старых" версиях обычным способом было комментирование всего текста процедуры a, изменение процедуры b и раскомментирование обратно В FB, если не ошибаюсь с 2.0, можно не заморачиваться и сделать сразу CREATE OR ALTER PROCEDURE b (с новыми параметрами) - ошибки зависимостей не будет. Будет просто неправильный blr у процедуры "a". и потом CREATE OR ALTER PROCEDURE a (которая использует "b" уже с новыми параметрами). И не надо ничего комментировать, заменять, потом раскомментировать... Однако, да. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:23 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarТеперь нужно добавлять suspend в конце, чтобы закомментированная процедура не была пустой. Потом не забыть его убрать. Так и предполагается делать или предполагается другой способ? Ты же сам ответил на свой вопрос в начальном посте! Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Что мешает тебе скачать свежий IBExpert, залезть в "Настройки"->"Общие шаблоны"->"New trigger" и добавить в тело шаблона триггера строку "IF (1=0) THEN SUSPEND;"? Эту строку, впоследствии, даже не обязательно комментировать. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:25 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
rdb_dev и добавить в тело шаблона триггера НЕТ! ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:27 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
чччД, ну промахнулся! Бывает... Не триггера, конечно, а процедуры. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:29 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
авторCREATE OR ALTER PROCEDURE b (с новыми параметрами) - ошибки зависимостей не будет. Будет просто неправильный blr у процедуры "a". Кстати да. С одной стороны - как бы удобно. С другой - дикий источник ошибок. Особенно для тех, кто привык к проверке параметров. Правда, тут ноги растут скорее всего раньше, чем с 2.0. Я проверил на 1.5 и с удивлением обнаружил, что он тоже дает это сделать. Думаю, что это скорее жирный минус, чем плюс. Если раньше контролировал сам сервер, то теперь это должен делать программист. Ну или сторонние утилиты, вроде IBExpert-а. Угу, они давно уже открыли для себя execute block. Неужели и процедуры перестали использовать? Одни сплошные блоки? СУБД обновить решился, Не решился. Все это тесты и пробы.. Перед тем как ставить "людям" проверять и проверять.. С возможностью вернуться назад, если глюки попрут. У древнего IBExpert есть одна фича - возможность выполнять alter procedure в скрипт-execute когда есть коннекты, ее использующие, и по идее такой альтер должен выдавать ошибку. С какого то момента, очень давно, автор посчитал эту фичу багом и исправил. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:30 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarВозникает вопрос по "видению ситуации". Вот, скажем, одна процедура a делает select из процедуры b и сама возвращает данные. И нам оказывается добавить входной параметр в процедуру b. "В старых" версиях обычным способом было комментирование всего текста процедуры a, изменение процедуры b и раскомментирование обратно. Теперь нужно добавлять suspend в конце, чтобы закомментированная процедура не была пустой. Потом не забыть его убрать. Так и предполагается делать или предполагается другой способ? таки есть другой способ добавить параметр в конец списка входных параметров и дать ему значение по умолчанию ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:31 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
dimitrНет саспенда - нехер селектить. В те времена warning-и вроде как ещё не изобрели. Может, сейчас стоит разжаловать это сообщение из ошибок?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:32 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Hello, Dimitry Sibiryakov! You wrote on 24 мая 2016 г. 17:34:30: Dimitry Sibiryakov> В те времена warning-и вроде как ещё не изобрели.ошибаешься Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:34 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, лично мне эта ошибка периодически помогает, когда забываю в селективной процедуре поставить suspend - выборку напишу, а suspend забуду. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:36 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Кстати, насчет изменения параметров процедуры без удаления ссылок на нее из других процедур. Да, так делать можно в смысле что сервер это пропускает. Но может так делать нельзя? Может это ведет к глюкам, ошибкам, порче базы да и вообще к чему угодно? Мало ли чего сервер пропускает сделать.. Вон, запрос времени по стандартной фиче из FIBPlus-а через клиент от пятерки к серверу просто рушит этот сервер. Причем все компилируется, а галочка по умолчанию стоит. Тут как на минном поле.. Если так делать можно, то пусть разработчик официально скажет - да, это допустимый путь. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:36 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
автор лично мне эта ошибка периодически помогает, когда забываю в селективной процедуре поставить suspend - выборку напишу, а suspend забуду. Очевидно, что ты не пишешь даже минимально не то что сложных - а просто объемных процедур. Если бы писал - привык бы не забывать. Так как там много чего можно забыть. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:38 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarВсе это тесты и пробы.. Перед тем как ставить "людям" проверять и проверять.. С возможностью вернуться назад, если глюки попрут. Опытные и осторожные люди такой переход делают не скачком, пусть даже с пробами, а постепенным переводом пользователей с одного сервера (где крутится старая версия) на другой (где уже новая). Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:40 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarДумаю, что это скорее жирный минус, чем плюс. Если раньше контролировал сам сервер, то теперь это должен делать программист. Хотите, чтобы контролировал сервер - используйте RECREATE PROCEDURE - и будет вам контроль и ошибка. У меня скрипт procs.sql выполняется при каждом обновлении базы - там все процедуры проекта. Все CREATE OR ALTER. Т.ч. ничего не забывается никогда - все перезоздаются обязательно, и если ошибка - ругается уже при перекомпиляции зависимых процедур. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:41 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarавтор лично мне эта ошибка периодически помогает, когда забываю в селективной процедуре поставить suspend - выборку напишу, а suspend забуду. Очевидно, что ты не пишешь даже минимально не то что сложных - а просто объемных процедур. Если бы писал - привык бы не забывать. Так как там много чего можно забыть. А вдруг и тебе случится писать несложные и не объемные процедуры? Сразу забудешь. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:42 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarЕсли так делать можно, то пусть разработчик официально скажет Он об этом уже сказал в release notes ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:42 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
авторОпытные и осторожные люди такой переход делают не скачком, пусть даже с пробами, а постепенным переводом пользователей с одного сервера (где крутится старая версия) на другой (где уже новая). Как ты себе это представляешь? На одном предприятии. Репликацию между двумя базами делать только ради этого что ли? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:46 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
авторОн об этом уже сказал в release notes Ссылочку, номер страницы. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:46 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarавторОн об этом уже сказал в release notes Ссылочку, номер страницы. 100$ ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:47 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarРепликацию между двумя базами делать только ради этого что ли? Да. В чём проблема-то? Если БД спроектирована вменяемо, это займёт меньше времени чем данный топик. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:48 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarНо может так делать нельзя? Может это ведет к глюкам, ошибкам, порче базы да и вообще к чему угодно? можно. Ведет это к инвалидации зависимостей. Что можно проверить и исправить. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:54 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
YuRock , не подаю. (ирония) Dimitry Sibiryakov, короче надо дать вам 100 000 баксов и вы за пару дней сделаете репликацию базы с 300 таблицами, 800 процедурами, при этом гарантируете ее правильную работу и отсутствие каких-либо глюков - чтобы было точно известно - любой глюк от новой версии сервера, а не от сбацаной наспех репликации.. Тупо, конечно, спроектировано. Надо было парой тройкой таблиц обойтись и вообще хранимые процедуры не создавать. А то и вообще хранить все в одной таблице. В блобах. (/ирония) ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 17:57 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBar, С жалкими 300 таблицами и 800 процедурами, я думаю, Дмитрий и дешевле согласится. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 18:00 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
dimitr, есть ли какие-то стандартные средства проверки некорректности зависимостей или это надо делать вручную либо с использованием сторонних утилит? Ну вроде какой-нибудь команды check procedures или ключа у какого-нибудь gfix? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 18:02 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
WildSery, какой вы занятный человек - за всех думаете, за всех отвечаете.. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 18:03 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBar, Можно на "ты". Мои сообщения пишет робот-секретарь. А я только нажимаю "Опубликовать" ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 18:05 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarкороче надо дать вам 100 000 баксов и вы за пару дней сделаете репликацию базы с 300 таблицами, 800 процедурами, при этом гарантируете ее правильную работу и отсутствие каких-либо глюков - чтобы было точно известно - любой глюк от новой версии сервера, а не от сбацаной наспех репликации.. Зачем "от сбацанной наспех"? Гораздо дешевле чем 100 килобаксов берётся всем известный готовый репликатор, проверенный десятилетиями эксплуатации у сотен пользователей, читается документация к нему, изучается схема БД по имеющейся (не правда ли?) у ней документации и... всё, супермаркет. В простейшем случае (все таблицы имеют ПК, нет хранимых агрегатов, каскадных ФК и хитровывернутой логики приложения) собственно настройка репликации занимает менее пяти минут. В противном случае основное время уходит как раз на чтение документации и выявление всякой фигни в БД. Что, впрочем, практически не затрагивает работу пользователей. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 18:06 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Как называется всем известный готовый репликатор? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 18:09 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Да простят меня модераторы... EugeneBarКак называется всем известный готовый репликатор? IBPhoenix Replicator. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 18:12 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarЯ проверил на 1.5 и с удивлением обнаружил, что он тоже дает это сделать. а что, InterBase не дает такого сделать? ты перескакиваешь с темы на тему. Инвалидация процедур в каком-то виде разве что в ФБ 3 сделана. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 18:17 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
kdv, инвалидация процедур была и в 2.5. Поле RDB$VALID_BLR в RDB$PROCEDURES и RDB$TRIGGERS. Отлавливает далеко не все случаи. В 3.0 просто появились пакеты и там оно более явно проявляется когда инвалидом становится целый пакет процедур и функций. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 18:23 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Симонов Денис, я просто не понял, почему EugeneBar вдруг с удивлением узнал про "в ФБ 1.5 было так же", если эта бодяга тянется очень давно, исходно в ИБ, и следственно в ФБ, и только в ФБ 2.5 ее хоть как-то начали исправлять. http://www.ibase.ru/db_repair/#Процедуры и триггеры ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 18:29 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarYuRock , не подаю. (ирония) Dimitry Sibiryakov, короче надо дать вам 100 000 баксов То вы жмотитеь на 100 баксов, то готовы дать 100 000. Такое ощущение, что у вас нет ни того, ни другого /ирония/ ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 18:46 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarОчевидно, что ты не пишешь даже минимально не то что сложных - а просто объемных процедур. Если бы писал - привык бы не забывать. Так как там много чего можно забыть. Вполне допускаю, что твоё субъективное суждение о сложности и объемности чужих SP построено относительно твоего личного опыта их написания и хранимая процедура в более чем 300 строк кода, предназначенная для внесение изменений в значения членов объекта динамической ORM системы, для тебя такой сущий пустяк, что ты даже не запариваешься отладкой подобных пустяков, а сразу, по привычке, пишешь начисто и без ошибок. Допускаю... Но, заметь, при написании без использования CASE средств нескольких десятков тысяч строк sql скрипта, содержащего, помимо прочего, создание и пересоздание доброй сотни хранимых процедур, в которых, также, встречаются процедуры с рекурсивным вызовом, у меня не возникло такой дурацкой претензии по поводу SUSPEND, как та, что ты изрыгнул на полях данного форума. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 19:48 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
kdv, сейчас проверил - в IB 7 тоже дает. Возможно, в IB 4 не давала и с тех пор запомнилось. Может и там не было. Точно уже не скажу. Видимо, я слишком привык так никогда не делать и аккуратно отлавливать все зависимости. rdb_dev, пересоздавать все процедуры в базе из-за изменения одной - это глупо. Тут, конечно, не до решения сложных задач, т. к. ты сложность сам себе создаешь на пустом месте из ничего. Хз, как ты до этого додумался, может с какого-нибудь MS SQL перенял или с какого-нибудь убогого php-программирования. Субъективность мнений это для споров о вкусе еды или одежды, в технических следует стремится к объективности, благо это возможно. Конечно, и ошибки и отладки и поиск в чужом коде трудно отлавливающихся багов, возникающего порой из-за одного неверное написанного символа. Забытый suspend в простой процедуре обнаруживается сразу и исправляется сразу. Ни от чего этот запрет не спасает, зато добавляет проблем. -- Кстати, если процедура вызывается через execute procedure, туда в FB 2.5 можно suspend вставлять или нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2016, 01:54 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
rdb_dev, насчет того, что у тебя возникло и что не возникло. Я вижу в твоих рассуждениях неспособность к абстрактному мышлению. "У меня возникло, у тебя не возникло, мне нравится, тебе не нравится". Отрешится от "я" и "ты" ты не в состоянии. Поэтому разговаривать с тобой это как пытаться объяснить слепому цвет. Собственно, как слепой ты понимаешь только два вида разговора - нерассуждающего принятие чужого безапелляционного мнения и такое же навязывание своего. Второе, конечно неправильно, так что тебе следует просто молча слушать. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2016, 02:08 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarКстати, если процедура вызывается через execute procedure, туда в FB 2.5 можно suspend вставлять или нет? можно ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2016, 06:59 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarКстати, если процедура вызывается через execute procedure, туда в FB 2.5 можно suspend вставлять или нет? EugeneBarПоэтому разговаривать с тобой это как пытаться объяснить слепому цвет. Собственно, как слепой ты понимаешь только два вида разговора - нерассуждающего принятие чужого безапелляционного мнения и такое же навязывание своего. Второе, конечно неправильно, так что тебе следует просто молча слушать. Если ты элементарно не в состоянии прочесть официальное РУССКОЕ Руководство по языку SQL СУБД Firebird и начинаешь пузырить тут соплями, растопыривать пальцы и доказывать всем, что ты единственный, неповторимый и самый умный Д'Артаньян, а все вокруг тебя 3,1415... и что только твоё мнение самое правильное и безапелляционное, то я, конечно, не буду пытаться доказывать тебе обратное и рекомендовать именно тебе молча слушать, так как это равносильно метанию бисера перед (сам знаешь кем). Посоветую лишь пересмотреть на досуге старый советский мультипликационный фильм "Самый, самый, самый", который ты, по всей видимости, ни разу не смотрел. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2016, 09:18 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Симонов ДенисEugeneBarКстати, если процедура вызывается через execute procedure, туда в FB 2.5 можно suspend вставлять или нет? можно но если их несколько, то сработает только первый, до остальных управление никогда не дойдет ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2016, 09:40 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
dimitr, кстати про запрет на отсутствие SUSPEND в селективных ХП. Для PSQL функций отсутствие RETURN почему-то считается нормальным. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2016, 09:44 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Симонов Денис, Адриано не доглядел, наверно. Когда юзеры начнут техподдержку мучить по этому поводу, добавят :). ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2016, 09:57 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Симонов Денискстати про запрет на отсутствие SUSPEND в селективных ХП. Для PSQL функций отсутствие RETURN почему-то считается нормальным. с функциями все прямолинейно. Если бы процедуры вызывались только через execute, для них бы тоже ничего не городили. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2016, 10:02 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
rdb_dev, у тебя мозгов нет, не говори ничего. Адриано не доглядел, наверно. Когда юзеры начнут техподдержку мучить по этому поводу, добавят :). Не надо одним маразмом порождать другой. Модератор: Назначаю успокоительные процедуры. Начнём с непродолжительных. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2016, 18:15 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBar, в каких случаях функция не должна ничего возвращать? Заметь это не C написать что-то типа Код: sql 1. 2.
не выйдет. Для таких случаев у нас процедуры есть. Функция без RETURN это конечно не ошибка, но как минимум WARNING не помешал бы, как это делают компиляторы в других языках программирования. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2016, 18:31 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Симонов Денис, возможно, хотя в Дельфи в итоге пришли к объединению синтаксиса функций и процедур. Однако, IMHO важнее сделать какую-то проверку на некорректный вызов хранимых процедур, если ее нет. Хотя бы как ключ gfix или псевдо-команду sql. Чтобы выдавало список некоректных процедур. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2016, 22:10 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Какой ключ gfix или псевдо-команда sql, чувак? Это делается элементарным EB/IBE-блоком. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2016, 22:26 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Приведи пример такого блока, чувак. И еще - его желательно в faq добавить. Кроме того мало ли что можно было сделать sql-командами. Можно и типы полей менять, и пользователей добавлять update-м системных таблиц (по крайней мере в старых версиях). Однако sql-инструкции для этого добавили. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2016, 23:17 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBar> Приведи пример такого блока, чувак. Гы... А шнурки тебе не завязать, чувак? Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26.
Доводи до ума, проверяй и отлаживай сам. > И еще - его желательно в faq добавить. Зачем? В FAQ-е на каждую фигню, пришедшую в голову, готовый ответ скрипт должен быть? В "полезные запросы" можно добавить, да. > Однако sql-инструкции для этого добавили. sql-инструкции для чего? Для "найдите мне неселектабельные процедуры в моей же БД"? Кстати, ты в какой-нибудь другой СУБД (менее нехорошей, чем FB) такое встречал? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 00:46 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Гаджимурадов Рустам Код: sql 1. 2.
Если исходный текст не потерт - не обязательно выполнять - можно проверить наличие SUSPEND в RDB$PROCEDURE_SOURCE... Гаджимурадов Рустамsql-инструкции для чего? Для "найдите мне неселектабельные процедуры в моей же БД"? Чего уж там - если дать в руки стеклянный ... шар - и шар побьет и руки порежет... ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 01:09 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
DarkMaster> Если исходный текст не потерт Согласен, можно, если не потёрт. Но в таком случае и EB городить смысла нет - обычного select where containing 'suspend' хватит. > и шар побьет и руки порежет... Не, проглотит, как пить дать. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 02:09 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Хотя нет, слишком ненадёжно - могут быть потёрты, могут не соответствовать, наконец, могут быть просто закомментированы. Execute надёжнее, хоть и дольше. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 02:11 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Гаджимурадов РустамХотя нет, слишком ненадёжно - могут быть потёрты, могут не соответствовать, наконец, могут быть просто закомментированы. Execute надёжнее, хоть и дольше. Как по мне - глазками оно как-то надежней будет. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 09:47 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Немного по теме. Пришла мысль. Не понятно, почему не воспринимать автоматически, на уровне сервера, SELECT из НЕселективной процедуры, т.е. SELECT ... FROM PROCEDURE_NAME(...) INTO ... как аналог EXECUTE PROCEDURE PROCEDURE_NAME(...) RETURNING_VALUES ... Мне кажется, это было бы логично и понятно. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 13:08 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Четвёртый, малоизвестный, поросёнок: Нах-Нах. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 13:41 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovЧетвёртый, малоизвестный, поросёнок: Нах-Нах. Из соображений, чтобы ничего не поломать - согласен, конечно. Но вообще "SELECT INTO переменная" - нормальная практика, мне кажется. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 13:46 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Мне кажется, это было бы логично и понятно. Это нелогично и непонятно. Программа должна делать то, что программист написал, а не пытаться за него решать, что ему надо. Нарушение этого принципа в изобретении неких "селективных процедур" чтобы дебилы не мучали техподдержку (это мне советских уборщиц напомнило - которые орали на всех, кто осмеливается по полу ходить) провоцирует людей на дальнейшие блуждания мысли и запутывание. "SELECT INTO переменная" - нормальная практика, мне кажется. А кто сказал, что это ненормальная практика? В любой процедуре ставишь suspend в конце и вызываешь ее через select. Ты ее так можешь вызвать без проблем что из другой хранимой процедуры, что из программы обычным TpFIBQuery. Я всегда так делаю, returning_values почти не пользуюсь. Что за брожение? Следить надо за ясностью и лаконичностью концепций, а не придумывать какую-то херню, не понимая зачем. Если кто то не обладает абстрактным мышлением - его проблемы, ничего ему не поможет. Цель - как можно меньшим количеством средств дать как можно больше возможностей. А не наворачивать 10 способов сделать одно и то же. Неявное псевдоразделение процедур на селективные и нет сразу порождает излишнюю сложность из ничего и хаос в головах. Если уж разговор пошел на эту тему, то как раз returning_values можно было бы убрать, т. к. оно не дает ничего, что бы можно было сделать select-м. Единственное исключение - процедура, которая ничего не возвращает (без returning_values), которую можно вызвать только execute, но не select-м. То есть можно сделать так - для любого возврата вызов через select, если ничего не возвращает - execute. Но по соображениям обратной совместимости, конечно, returning_values выкидывать не следует. Не надо делать как в C# - в итоге из-за "демократии" и угождения всем из аналога Дельфи получилась шизофреническая монстроузная херня, в которой модуль с пустой формой генерирует 1000 строк кода. Вообще, архитектуру должен делать один или несколько человек, с четким пониманием и видением цельной картины. А не толпа посредственностей, не понимающая ничего. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 14:36 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarЭто нелогично и непонятно. EugeneBarТо есть можно сделать так - для любого возврата вызов через select Ты уж определись. За ты или против. А то получается, что ты и за, и против в одном посте. EugeneBarВ любой процедуре ставишь suspend в конце и вызываешь ее через select. Ты ее так можешь вызвать без проблем что из другой хранимой процедуры, что из программы обычным TpFIBQuery. Я всегда так делаю, returning_values почти не пользуюсь. Ну и зря :) Это очень глупо. Заставлять компьютеры делать много лишних операций. Я уже не говорю про траффик и кол-во запросов на сервер - как минимум лишний фетч добавляется. Ясное дело, что то, что я предлагал - касалось только PSQL - для клиента предусмотрены разные функции для разных нужд. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 14:53 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarВообще, архитектуру должен делать один или несколько человек, с четким пониманием и видением цельной картины. И сколько может быть этих "несколько"? Четырёх достаточно?.. PS: Выкинуть проверку на селективность из кода - работы на полчаса максимум... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 15:05 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovPS: Выкинуть проверку на селективность из кода - работы на полчаса максимум... Т-с-с, пока Таблоид не услышал - он быстренько сваяет тебе тест, который после "выкидывания" чего-то нехорошее сотворит ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 15:18 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Гаджимурадов Рустам чувак, а где же пишущийся левой пяткой за пять минут блок для поиска некорректных процедур? Ты уж определись. За ты или против. А то получается, что ты и за, и против в одном посте Это называется размышление и взвешивание за и против. Дикая вещь, да? Вывод - оставить returning_values для обратной совместимости и не делать никаких автоподмен. Программист должен получать то, что написал. Вообще, в простом синтаксисе хранимых процедур упрощать некуда. Заставлять компьютеры делать много лишних операций. Я уже не говорю про траффик и кол-во запросов на сервер - как минимум лишний фетч добавляется. О каком трафике и каких запросах на сервер ты говоришь? Когда то был баг с execute кажется в клиентской библиотеке. Исключения проглатывались. Не знаю, исправили или нет, но select с order by (когда одна строка возвращала) от этого бага спасал. Dimitry Sibiryakov И сколько может быть этих "несколько"? Четырёх достаточно?.. Достаточно. Выкинуть проверку на селективность из кода - работы на полчаса максимум... Не сомневаюсь. Зараза пока не укоренилась, однако фантазию у непонимающих будит, как тут видно! Если такая фигня будет не в единственном экземпляре, ее уже просто так не выкинешь. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 15:42 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarНарушение этого принципа в изобретении неких "селективных процедур" чтобы дебилы не мучали техподдержку я напомню, что InterBase был сделан в 1984-85 году, а SQL в нем появился к 1994 году. И PSQL возник из предыдущей реализации так называемого GDML. Предусмотреть все ни у кого возможностей нет. Исходно поддерживалось два типа процедур - обычные и селективные. Чтобы процедура была "селективной", в ней должен быть написан suspend. Пользователи этого не понимали, и задавали вопросы - "почему я делаю селект из процедуры, а выбирается только одна запись?". Поэтому для селективных процедур ввели обязательность наличия в ней suspend. Никакого конфликта здесь нет. Раньше можно было сделать select из процедуры без suspend? считай это багом. Ты умный, использовал это как фичу? Ну а другие, неумные, делали это по незнанию. Еще пример. В 2.5 исправили UPDATE SET A=B, B=A. Нашлось пару человек, которые явно закладывались на эту фичу. Для них была сделана опция, которая по умолчанию была выключена (и при включении возвращала поведение назад). Но новое поведение - СТАНДАРТНО (в т.ч. и для других серверов). Еще некоторое количество людей напоролись на то, что они не знали о старом некорректном поведении. (кстати, проверь ИБ на эту фишку, если хочешь). И до кучи - недавно (не помню когда) в ФБ ввели зависимости для генераторов. Раньше люди напарывались на то, что в blr генератор использовался по номеру (адресу), а не по имени. В результате после удаления и создания генератора A в процедурах и триггерах этот генератор "ничего не генерил". Зависимости не позволяют удалить генератор просто так. Но разумеется, ряд людей счел это недостатком, т.е. необходимостью выполнять ряд лишних телодвижений. Я это все к тому, что из массы обязательно найдется кто-то, кто придумает свое специфическое использование какой-то фичи, бага или особенности, и обязательно напорется, когда эту фичу скорректируют или исправят. EugeneBarВообще, архитектуру должен делать один или несколько человек, с четким пониманием и видением цельной картины. А не толпа посредственностей, не понимающая ничего. это намек? совсем берега потерял? Ладно брякнуть такое, если бы оно так и было. Но... ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 15:46 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarДостаточно. Ну так ты не поверишь, но их как раз четыре. EugeneBarНе сомневаюсь. Зараза пока не укоренилась, однако фантазию у непонимающих будит, как тут видно! Если такая фигня будет не в единственном экземпляре, ее уже просто так не выкинешь. О чём это ты бредишь? Я тебе говорю: собери себе сервер без этой проверки и наслаждайся жизнью. Это быстрее и проще чем зловонять на форуме. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 15:49 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarЭто называется размышление и взвешивание за и против. Дикая вещь, да? Когда это делается вслух - да, если честно :). EugeneBarО каком трафике и каких запросах на сервер ты говоришь? Сетевом. Запросах, которые делает клиентская библиотека на сервер при вызове таких функций, как, например: isc_dsql_execute2 isc_dsql_fetch и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 15:49 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarНе сомневаюсь. Зараза пока не укоренилась ну иди, собери митинг на эту тему. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 15:53 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
kdvEugeneBarНе сомневаюсь. Зараза пока не укоренилась ну иди, собери митинг на эту тему. Да, пора уже 4-ю тему открывать :) Тем более, Dimitry SibiryakovНу так ты не поверишь, но их как раз четыре. Магия чисел ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 15:56 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
kdvEugeneBarНе сомневаюсь. Зараза пока не укоренилась ну иди, собери митинг на эту тему. Предлагаю взять почту, телеграф, телефон... ТСу - выдать именной канделябр. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:00 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
DarkMaster, Надувной. И не канделябр. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:06 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
WildSery, Стеклянный предлагали - не берет :( ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:12 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
не знаю как кому везло, но мне один такой вживую попался - прямо брат-близнец ТС ))))))))))))))))) нытье на несовершенство мира, субд, IDE, начальника, претензии на знании истины, непонятость гения - лишь бы дело не делать ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:28 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Hello, Maratisk! You wrote on 27 мая 2016 г. 16:30:58: Maratisk> не знаю как кому везло, но мне один такой вживую попался - прямо брат-близнец ТС ))))))))))))))))) > нытье на несовершенство мира, субд, IDE, начальника, претензии на знании истины, непонятость гения - лишь бы дело не делатьусыпили? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:31 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
кстати, в резюме у этого субъекта было написано - Верю в инопланетян! теперь я понимаю, что это каким-то мистическим образом связано с неумением писать программы )))))))))))))))))))))) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:32 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
МимопроходящийHello, Maratisk! You wrote on 27 мая 2016 г. 16:30:58: Maratisk> не знаю как кому везло, но мне один такой вживую попался - прямо брат-близнец ТС ))))))))))))))))) > нытье на несовершенство мира, субд, IDE, начальника, претензии на знании истины, непонятость гения - лишь бы дело не делатьусыпили? грех на душу брать?! а вдруг он был прав?! меня же потомки заклеймят! просто уволили ))))))))))))))) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:35 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
авторКогда это делается вслух - да, если честно :). Ты это серьезно? Тогда все совсем запущено. kdv это намек? совсем берега потерял? Ладно брякнуть такое, если бы оно так и было. Но... Это намек на стадо обезьян в этой теме и других на этом форуме. То, что FB делают адекватные люди - я знаю и на это надеюсь. Хотя насчет бразильского товарища, который вроде как повинен в suspend-е, есть определенные сомнения. Раньше можно было сделать select из процедуры без suspend? считай это багом. Это не баг. Сейчас тоже можно сделать процедуру, которая ничего не возвращает. Хотя селективная. Это аналог пустого запроса. Раз допустимы пустые таблицы и пустые запросы, значит допустимы ничего не возвращающие процедуры. Считать это багом нельзя. Исправление - это именно заплатка. "почему я делаю селект из процедуры, а выбирается только одна запись Не так. Они должны были спрашивать: "Почему НИЧЕГО не возвращает?" И спасибо - в этом сообщении ты дал больше информации о несовместимостях, чем другие в тонне флуда. -- Флудерам, не пишущим по теме: Вы понимаете, что со своим хамством, наркоманскими картинками и флудом ведете себя неадекватно? Вам задают конкретные вопросы, высказывают конкретные пожелания. Вы в ответ прыгаете и кривляетесь. Лучше просто ПРОМОЛЧАТЬ. Тем более тем, кто не является разработчиком и никак не влияет на то, что будет сделано. Ребята, если вопрос к разработчику, то он очевидно не к вам. Если вы начинаете за разработчика пытаться отвечать, демонстрировать идиотизм и кривляться, вы наносите вред, а не защищаете. Не судите по себе - если на вас лучше всего наорать в ответ на вопрос, то это не значит, что так надо делать по отношению ко всем людям. [mod]Обозвал всех обезьянами, некоторых - наркоманами, остальных просто хамами. Уже до поучения разработчиков дошёл, проектировать архитектуру, мол, поучились бы. Водные процедуры до понедельника, а там посмотрим, будет ли замечено своё бревно в глазу.[mod] ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:38 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarЭто намек на стадо обезьян в этой теме и других на этом форуме.ну, за стадо обезьян! зы: это не тост ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:43 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarВам задают конкретные вопросы, высказывают конкретные пожелания. Один мой друг, он стоил двух, он ждать не привык, Был каждый день последним из дней. Он пробовал на прочность этот мир каждый миг. Мир оказался прочней. (с) МВ Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:43 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
автортеперь я понимаю, что это каким-то мистическим образом связано с неумением писать программы )))))))))))))))))))))) Главное побольше скобочек ставить как девочка. Тогда понимание придет. Модератор: Вот он сравнил тебя с каким-то балбесом, мол, чем-то напоминаешь. А ты отвечаешь прямым оскорблением. По-прежнему не доходит, почему тут так с тобой разговаривают? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:44 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
К нам год назад приходил один кандидат в программисты, который отказался беседовать при приеме на работу, ссылаясь на то, что его качества полностью отражены в резюме, а вопросы наши слишком дебильны. Уходя, обзывался, громко. Тоже что-то про кучку тупиц. Недавно опять пришел. Мы его запомнили, а он нас почему-то нет. Так и ходит где-то, наверное. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:45 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarнасчет бразильского товарища, который вроде как повинен в suspend-е он не имеет к этому отношения ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:45 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
чччД, раз ходит, значит вы не нашли, все продолжаете искать дураков, которые бы захотели с вами связаться. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:48 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarЕсли уж разговор пошел на эту тему, то как раз returning_values разберу и слегка прорезюмирую, плюс добавлю некоторые логические выводы 1. если все процедуры вызывать через select, пропадает необходимость в execute 2. все же, люди вызывают execute (и оно есть в других серверах), значит надо оставить 3. если все процедуры вызывать через select, значит везде надо suspend, а значит его можно убрать. 4. без двух и более suspend невозможен возврат данных из процедуры "по частям". значит suspend надо оставить 5. у execute можно убрать returnin_values, но вроде как можно и не убирать. считаю, что все это глубокомысленная болтология. Почему-то вызванная простым требованием - у селективных процедур внутри должен быть suspend. Поскольку решения об изменениях и нововведениях в SQL FB принимаются разработчиками Firebird, ты действительно можешь написать петицию, и собрать за (или против) нее некоторое количество людей. Дальше твои пожелания рассмотрят (может быть). p.s. ты, видимо, еще не засёк изменения в оптимизаторе. интересна (хотя и предсказуема) будет твоя реакция, когда наткнешься. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:51 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarРебята, если вопрос к разработчику, то он очевидно не к вам. ну ок, пусть тебе только разработчики отвечают. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:53 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
kdvпусть тебе только разработчики отвечают. Да он не опознает разработчика даже если его ткнуть носом в список на Source Forge. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:57 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarвсе продолжаете искать дураков, которые бы захотели с вами связаться. ? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 16:59 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
kdvEugeneBarвсе продолжаете искать дураков, которые бы захотели с вами связаться. ? Возможно, пациент считает, что мы за год никого так и не нашли. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 17:01 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
kdvEugeneBarРебята, если вопрос к разработчику, то он очевидно не к вам. ну ок, пусть тебе только разработчики отвечают. На всякий случай продублирую исходный вопрос (к разработчикам?): EugeneBar... Что это за маразм на ровном месте? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 17:09 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
если все процедуры вызывать через select, значит везде надо suspend, а значит его можно убрать Это неверно. Любой select может возвращать пустой результат - и это тоже результат. Селективная процедура возвращает отношение. Схема в отношении обязательна, а вот тело вполне может быть пустым множеством. Правда возвращаемое процедурой отношение все-таки имеет ограничение - определен порядок строк. Но это не влияет на то, что процедура без suspend-а ничем не хуже любой другой селективной процедуры. Короче, с этим все ясно, больше нет смысла обсуждать.. ты, видимо, еще не засёк изменения в оптимизаторе. интересна (хотя и предсказуема) будет твоя реакция, когда наткнешься. Так скажи сам что это за "страшные изменения", будь другом. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 17:11 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBar, для кого как. Для меня изменения скорее положительные. Т.е. в большинстве случаев план стал более оптимальным, но бывает и такое что запрос который работал хорошо стал работать хуже. Приходится думать как его оптимизировать или вовсе переписать. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 17:14 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
чччД, слабо свою кампанию назвать и себя? Лучшая реклама будет, я считаю. Что то ты стесняешься даже зарегистрироваться на форуме. Либо регистрацию имеешь, но писать от своего имени стыдишься. kdv, то обращение было к флудерам, а не к тебе, т. к. ты пишешь по делу и даешь полезную информацию. Да он не опознает разработчика Было бы неплохо, чтобы разработчики имели в подписи надпись об этом. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 17:18 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Симонов Денис, а в чем суть изменений? Я в релиз нотах про это не видел, хотя может читал невнимательно. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 17:19 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarТак скажи сам что это за "страшные изменения", будь другом. ищи на форуме, или читай релизноты, или спрашивай у разработчиков. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 17:20 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
Мимопроходящийзы: это не тостА по-моему, вполне себе тост. (по крайней мере я свою уже выпил ) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 17:22 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
WildSery, Хотел уже прибить нахрен эти несколько топиков. Смотрю ты в топике пишешь... ты их читаешь? оставить? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 17:31 |
|
Знакомство с Firebird 2.5 - и сразу маразм с запретом select из пустых процедур
|
|||
---|---|---|---|
#18+
EugeneBarБыло бы неплохо, чтобы разработчики имели в подписи надпись об этом. Ага, и цак в нос. А тебе, конечно, выдать жёлтые штаны. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2016, 17:32 |
|
|
start [/forum/topic.php?all=1&fid=40&tid=1562162]: |
0ms |
get settings: |
12ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
48ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
153ms |
get tp. blocked users: |
2ms |
others: | 280ms |
total: | 532ms |
0 / 0 |