Страница 1 из 2
Вопрос по версиям FB и алиасам
Добавлено: 18 мар 2008, 20:21
Kotъ-Begemotъ
Насклько я понмаю, нельзя смешивать имена таблмц в качестве алмасов и произвольные алиасы. Например вот реальный кусок запроса:
Код: Выделить всё
UPDATE ORDWHSSP SET DAT=(SELECT MIN(MOVEWHS.MOVDATE)FROM MOVEWHS M INNER JOIN SPCMVWH S ON(S.MOVENO=M.MOVENO)AND(S.WHSNO=M.WHSNO)WHERE(M.PRIHOD>0)AND(M.PROVED>0)
Я понимаю, что так нельзя делать, это не мой код, и вопрос даже не в этом. Вопрос: В каких версиях FB это БУДЕТ работать? В 2 я так понял это работать не будет вообще. А в 1.5 будет?
Добавлено: 18 мар 2008, 21:58
hvlad
2.0.4 и 2.1 имеют спец. ключ в конфиге для разрешения этого безобразия
Добавлено: 18 мар 2008, 23:42
Kotъ-Begemotъ
hvlad писал(а):2.0.4 и 2.1 имеют спец. ключ в конфиге для разрешения этого безобразия
Отлично, но скажи, пожалуйста, в какой версии FB это было допустимо, и с какой версии это стало недопустимо, мне сейчас именно это важно?
Добавлено: 19 мар 2008, 00:03
Kotъ-Begemotъ
Kotъ-Begemotъ писал(а):hvlad писал(а):2.0.4 и 2.1 имеют спец. ключ в конфиге для разрешения этого безобразия
Отлично, но скажи, пожалуйста, в какой версии FB это было допустимо, и с какой версии это стало недопустимо, мне сейчас именно это важно?
Поясни, плиз, как можно в 2.0.3 заставитт работать такой той код?!?
Добавлено: 19 мар 2008, 00:42
hvlad
Насколько я помню, это запретили в 2.0.0
Это должно быть в релизнотах
Добавлено: 19 мар 2008, 09:25
kdv
я не пойму - а на фига ВОТ ТАК писать?
MOVEWHS.MOVDATE)FROM MOVEWHS M ...
Добавлено: 19 мар 2008, 13:46
Kotъ-Begemotъ
kdv писал(а):я не пойму - а на фига ВОТ ТАК писать?
MOVEWHS.MOVDATE)FROM MOVEWHS M ...
Сам теряюсь в догадках

( Единственное объяснение - писал студент за "подножный корм". А понятие DBA или руководителя проекта отсутствовало в принципе. Из за этой хрени я не могу перевести людей на двойку, и не могу использовать инкрементальный бэкап. Ладно бы такая лажа была только в хп и триггерах - их можно переписать. Но у них и в запросах то же самое

((
Добавлено: 19 мар 2008, 18:48
Kotъ-Begemotъ
Нда, видимо только установка 2.0.4 или 2.1 спасёт? Боюсь только как бы чего другого не вылезло, что судя по базе более чем возможно

((
Добавлено: 20 мар 2008, 00:34
Esperito
hvlad писал(а):2.0.4 и 2.1 имеют спец. ключ в конфиге для разрешения этого безобразия
Извините за оффтоп, но где бы найти версию 2.0.4?
Добавлено: 20 мар 2008, 00:51
hvlad
Esperito писал(а):где бы найти версию 2.0.4?
Пока что в виде снапшотов на официальном сайте
Добавлено: 20 мар 2008, 01:02
Kotъ-Begemotъ
hvlad писал(а):Esperito писал(а):где бы найти версию 2.0.4?
Пока что в виде снапшотов на официальном сайте
А что есть снапшот-версия? Что-то типа пре-релиза или беты? С точки хрения стабильности что посоветуешь - 2.0.4 или 2.1 RC2 ?
Добавлено: 20 мар 2008, 09:37
kdv
"снапшот" это файлы конкретного билда. просто файлы, без инсталлятора.
2.04 - это релиз.
2.1 - это кандидат в релиз.
поэтому вопрос "что посоветуешь" бессмысленен.
Добавлено: 20 мар 2008, 23:03
Kotъ-Begemotъ
kdv писал(а):"снапшот" это файлы конкретного билда. просто файлы, без инсталлятора.
2.04 - это релиз.
2.1 - это кандидат в релиз.
поэтому вопрос "что посоветуешь" бессмысленен.
Понял, спасибо. А что включает в себя понятие "снапшот"? Ну, кроме того, что без инсталла? Или это все отличия? То есть понятие снапшон не подразумевает "недорелизности"? И в общем является стабильной версией? Извни что так подробно, но просто это сейчас актуально, вот и спрашиваю.
Добавлено: 21 мар 2008, 09:08
kdv
То есть понятие снапшон не подразумевает "недорелизности"?
см. snapshot в словаре. никакая релизность или недорелизность тут вообще ни при чем.
Извни что так подробно, но просто это сейчас актуально, вот и спрашиваю.
что актуально? Есть релиз, есть пре-релиз. что тебе надо, то и используешь. любые альфы, беты и пре-релизы - на свой риск.
Добавлено: 21 мар 2008, 16:37
Kotъ-Begemotъ
Кстати в FB 2.0.3 тоже есть в firebird.conf
OldParameterOrdering = 0
Он просто "для красоты"?
Добавлено: 21 мар 2008, 16:44
hvlad
Kotъ-Begemotъ писал(а):Кстати в FB 2.0.3 тоже есть в firebird.conf
OldParameterOrdering = 0
Он просто "для красоты"?
Когда
ты
будешь
читать
релиз ноты
???
Это не тот параметр, о котором я писал выше.
Добавлено: 21 мар 2008, 17:47
Kotъ-Begemotъ
hvlad писал(а):
Когда
ты
будешь
читать
релиз ноты
???
Это не тот параметр, о котором я писал выше.
Гм... Я просто не понял в КАКОМ релизноте надо это искать?!? В 2.0.4 своего релизнота нет - лежит от 2.0.3, поэтому я просто открыл firebird.conf и поискал в нём. Да, действительно нужный мне параметр это RelaxedAliasChecking.
Поиск в релизноте по RelaxedAliasChecking ничего не дал. Описание нашёл только в RN по 2.1, котороый только скачал... Так что зря говоришь, я не "чукча-писатель", просто ты сказал что нужные ключи есть в 2.1 И 2.0.4. Поскольку выше kdv меня убедил, что 2.0.4 это релиз, в отличие от релиз-кандидата 2.1, я скачал именно его на пробу, а в его доках про RelaxedAliasChecking ничего нету

В том числе и в whatsnew.txt, Firebird_conf.txt и прочих файлах в архиве 2.0.4...
Так что зря ругаешься, трудно читая Release Notes найти то, чего в них нет...
Добавлено: 21 мар 2008, 18:21
hvlad
Ты спросил конкретно про OldParameterOrdering, который есть во всех RN к той версии в которой его ввели.
2.0.4 ещё не вышел, нет даже RC, посему RN к нему нет.
Причём тут RelaxedAliasChecking ???
Добавлено: 21 мар 2008, 18:40
Kotъ-Begemotъ
hvlad писал(а):Причём тут RelaxedAliasChecking ???
Ээээ... как это при чём? Я собственно ветку с этого и начал. Что не могу перевести людей на FB2 из-за вот такого безобразного использования алиасов. А в конфиге читаю:
# Relations aliases checking rules in SQL
#
# Since Firebird 2.0, strict alias checking rules were implemented in the SQL
# parser accordingly to the SQL standard requirements. This setting allows
# to relax these rules to make legacy applications run on Firebird 2.0.
# Being set to 1 (true), it allows the parser to resolve a column reference
# by using a relation name even if an alias is specified for that relation.
# For example, queries like:
# SELECT TABLE.X FROM TABLE A
# would be allowed.
#
# It is highly not recommended to turn this setting on. Also note that
# there is no guarantee it will be supported in future Firebird versions.
#
# Type: boolean
#
#RelaxedAliasChecking = 0
Как раз то, что надо.
Добавлено: 22 мар 2008, 13:03
belov-evgenii
Kotъ-Begemotъ писал(а):А в конфиге читаю:
В каком конфиге? У меня в 2.0.3 нету такого