Re: JOIN с процедурой

2006-12-27 Пенетрантность Konstantin R. Beliaev
WildSery wrote: Зачем? MERGE можно легко курсорами симулировать. в ОДНОМ SQL запросе на клиенте-то я знаю как

Re: JOIN с процедурой

2006-12-27 Пенетрантность Konstantin R. Beliaev
Oleg LOA wrote: Тем что её стстояние не детерминировано, мог бы и сам догадаться. Мне например неизвестно что она каждый раз будет один и тот же набор значений выдавать. Это если предположить, что ее результат зависит от состояния каких-то данных в других таблицах (приведенный пример с

try - finally в процедуре

2006-12-27 Пенетрантность Konstantin R. Beliaev
Думаю, что ответ будет НЕТ, но все ж спрошу. Есть селективная процедура, в начале что-то записывается в промежуточную таблицу, в конце - вычищается. Но есть засада: если пользователь отфетчил данные не до конца, то до чистки дело не доходит. Нет ли какого механизма типа try - finally, чтоб эта

Re: JOIN с процедурой

2006-12-27 Пенетрантность sw
Ну если по ОДНИМ запросом можно считать и блоки, то наверное да.

Re: JOIN с процедурой

2006-12-27 Пенетрантность WildSery
On Wed, 27 Dec 2006 11:50:22 +0300, Konstantin R. Beliaev [EMAIL PROTECTED] wrote: Теоретически, можно подойти так: если на вход процедуры передается поле текущей строки таблицы, то она выполняется каждый раз, в противном случае - только один. Т.е. _заставить_ ее выполняться для каждой строки

Re: JOIN с процедурой

2006-12-27 Пенетрантность Konstantin R. Beliaev
Konstantin R. Beliaev wrote: WildSery wrote: Зачем? MERGE можно легко курсорами симулировать. в ОДНОМ SQL запросе на клиенте-то я знаю как Или это можно внутри процедуры? Если да, то не приведешь пример или ссылку? FB 1.5

Re: JOIN с процедурой

2006-12-27 Пенетрантность Boulitchev Aleksey
Теоретически, можно подойти так: если на вход процедуры передается поле текущей строки таблицы, то она выполняется каждый раз, в противном случае - только один. Т.е. _заставить_ ее выполняться для каждой строки будет можно. вот и заставляй ее не выполняться, а у людей как работало, так

Re: try - finally в процедуре

2006-12-27 Пенетрантность ArtGal
Konstantin R. Beliaev [EMAIL PROTECTED] сообщил/сообщила в новостях следующее: news:[EMAIL PROTECTED] Думаю, что ответ будет НЕТ, но все ж спрошу. Есть селективная процедура, в начале что-то записывается в промежуточную таблицу, в конце - вычищается. Но есть засада: если пользователь

Re: try - finally в процедуре

2006-12-27 Пенетрантность Sergiy S. Tkachenko
Konstantin R. Beliaev пишет: Есть селективная процедура, в начале что-то записывается в промежуточную таблицу, в конце - вычищается. Но есть засада: если пользователь отфетчил данные не до конца, то до чистки дело не доходит. Ну может первым делом очищай промежуточную таблицу, а потом

Re: JOIN с процедурой

2006-12-27 Пенетрантность WildSery
execute block returns (id1 int, id2 int) as declare c1 cursor for (select id from procedure1 order by 1); declare c2 cursor for (select id from procedure2 order by 1); begin open c1; open c2; fetch c1 into id1; if (row_count=0) then exit; fetch c2 into id2; if (row_count=0) then

Re: JOIN с процедурой

2006-12-27 Пенетрантность Horsun Vlad
WildSery ... execute block returns (id1 int, id2 int) as declare c1 cursor for (select id from procedure1 order by 1); declare c2 cursor for (select id from procedure2 order by 1); begin open c1; open c2; fetch c1 into id1; if (row_count=0) then exit; fetch c2 into id2;

Re: try - finally в процедуре

2006-12-27 Пенетрантность Horsun Vlad
Konstantin R. Beliaev ... Думаю, что ответ будет НЕТ, но все ж спрошу. Правильно думаешь Есть селективная процедура, в начале что-то записывается в промежуточную таблицу, в конце - вычищается. Но есть засада: если пользователь отфетчил данные не до конца, то до чистки дело не доходит.

Re: JOIN с процедурой

2006-12-27 Пенетрантность WildSery
On Wed, 27 Dec 2006 12:31:51 +0300, Horsun Vlad [EMAIL PROTECTED] wrote: Это не будет работать, если в c2 есть повторяющиеся значения Да, уел. Не для всех случаев применимо. Я вообще приводил пример только для уникальных id. На самом деле, легко поправить, чтобы и при повторяющихся в c2

Re: JOIN с процедурой

2006-12-27 Пенетрантность Horsun Vlad
WildSery ... On Wed, 27 Dec 2006 12:31:51 +0300, Horsun Vlad [EMAIL PROTECTED] wrote: Это не будет работать, если в c2 есть повторяющиеся значения Да, уел. Не для всех случаев применимо. Я вообще приводил пример только для уникальных id. Не ел я никого ;) На самом деле, легко

Re: JOIN с процедурой

2006-12-27 Пенетрантность Horsun Vlad
Horsun Vlad ... Вдогонку. Для желающих получить MERGE план в 2-ке должно работать такое (только для внутренних джойнов ) SELECT ... FROM (SELECT ... ORDER BY всё равно что) A JOIN (SELECT ... ORDER BY всё равно что) B ON ... Тупое подавление всех индексов (+0) тоже может

Re: JOIN с процедурой

2006-12-27 Пенетрантность Ded
Konstantin R. Beliaev wrote: Теоретически, можно подойти так: если на вход процедуры передается поле текущей строки таблицы, то она выполняется каждый раз, в противном случае - только один. Т.е. _заставить_ ее выполняться для каждой строки будет можно. Вспомнились страдальцы с УДФ

Re: try - finally в процедуре

2006-12-27 Пенетрантность Ded
Konstantin R. Beliaev wrote: Что приходит в голову: после селекта из процедуры делать rollback, делать периодическую чистку промежуточной таблицы. Что-нибудь еще? Чё-т тебя в проктологию ведёт, надо б консерваторию проверить ;) -- Regards. Ded.

Re: try - finally в процедуре

2006-12-27 Пенетрантность Andrei Yeryomin
Konstantin R. Beliaev пишет: Есть селективная процедура, в начале что-то записывается в промежуточную таблицу, в конце - вычищается. Но есть засада: если пользователь отфетчил данные не до конца, то до чистки дело не доходит. Нет ли какого механизма типа try - finally, чтоб эта чистка

Re: JOIN с процедурой

2006-12-27 Пенетрантность Oleg LOA
Konstantin R. Beliaev [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] Oleg LOA wrote: Это если предположить, что ее результат зависит от состояния каких-то данных в других таблицах (приведенный пример с 'NOW' и мысли об UDF пока опустим). Но тогда получается, что и состояние

Re: JOIN с процедурой

2006-12-27 Пенетрантность Konstantin R. Beliaev
WildSery wrote: То же самое можно процедурой. Так. Пошел разбираться с курсорами. В принципе, там значения полей уникальные, только процедура выдает меньше строк, чем есть в таблице.

[SemiOFF] FB + ZeBeDee

2006-12-27 Пенетрантность Vladimir A.Bakhvaloff
Hello, All! òÁÔÕÊÔÑ, ÇÒÁÖÄÁÎÅ!.. ëÁÎÁÌ - 64ëÂ... úÁÇÁÖÅÎ - ÐÏÌÎÏÓÔØÀ... :( úÁÈÏÔÅÌ, ÅÓÔÅÓÔ×ÅÎÎÏ, ÚÁZeBeDee'ÔØ ÅÇÏ... :) ðÏÞÉÔÁÌ ibase.ru... óËÁÞÁÌ zbd253setup.exe... é ÎÉÞÅÇÏÛÅÎØËÉ Õ ÍÅÎÑ ÎÅ ÐÏÌÕÞÁÅÔÓÑ... äÁÖÅ × ÌÏËÁÌËÅ... :( íÅÎÑ, ÎÁ×ÅÒÎÏÅ, ÓÂÉ×ÁÅÔ ÔÏ, ÞÔÏ ÓÅÒ×ÅÒ

Re: Диапазоны PK для филиалов

2006-12-27 Пенетрантность Boulitchev Aleksey
PS. IBP v3 - это мой шатл :-) к слову о шаттлах http://spacenews.ru/spacenews/live/full_news.asp?id=19198 к правильно написанной программе прилагаются правильные условия использования и правильные пользователи в общем нет в мире совершенства (с) Маленький принц -- Булычев Алексей

FbEmbedded внутри exe

2006-12-27 Пенетрантность Alexandr Kochmin
случайно попалась сылка. Может кому-то будет интересно. http://fhasovic.blogspot.com/2005/05/delphi-unit-to-embed-firebird-into-exe.html -- С уважением Кочмин Александр Firebird Foundation associate member #257

Re: FbEmbedded внутри exe

2006-12-27 Пенетрантность Андр?й Жук
LOL зашивать dll в ресурс - гениально

Re: JOIN с процедурой

2006-12-27 Пенетрантность WildSery
Вдогонку. Для желающих получить MERGE план в 2-ке должно работать такое (только для внутренних джойнов ) Действительно, select * from (select id1 from procedure1 order by 1) as q1 join (select id2 from procedure2 order by 1) as q2 on q1.id1 = q2.id2 даёт PLAN MERGE (SORT (SORT (AA

Re: JOIN с процедурой

2006-12-27 Пенетрантность WildSery
On Wed, 27 Dec 2006 15:40:28 +0300, WildSery wildsery-JGs/[EMAIL PROTECTED] wrote: даёт PLAN MERGE (SORT (SORT (AA NATURAL)), SORT (SORT (AA NATURAL))) Только я не понял, почему два сорта вложенных. Если написать без order by, select * from (select id1 from new_procedure) as q1 join (select

Re: JOIN с процедурой

2006-12-27 Пенетрантность Konstantin R. Beliaev
Oleg LOA wrote: Konstantin R. Beliaev [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] Oleg LOA wrote: Это если предположить, что ее результат зависит от состояния каких-то данных в других таблицах (приведенный пример с 'NOW' и мысли об UDF пока опустим). Но тогда получается, что

Re: JOIN с процедурой

2006-12-27 Пенетрантность Konstantin R. Beliaev
Ded wrote: Процедура возвращает одну строку, которая должна быть присобачена к каждой строке таблицы? Ну так и вычисли её в сторонке и пхай на OnCalcFields туда... Или она возвращает набор, в количестве которого должны размножиться строки, доставаемые из таблицы, и показывать одно и то же?

Re: try - finally в процедуре

2006-12-27 Пенетрантность Konstantin R. Beliaev
Ded wrote: Чё-т тебя в проктологию ведёт, надо б консерваторию проверить ;) Злой ты сегодня ;-)

Re: FbEmbedded внутри exe

2006-12-27 Пенетрантность Oleg LOA
Alexandr Kochmin [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] случайно попалась сылка. Может кому-то будет интересно. http://fhasovic.blogspot.com/2005/05/delphi-unit-to-embed-firebird-into-exe.html Херня полная, с таким же успехом извлеч требуемые DLL можно из архива при

Re: JOIN с процедурой

2006-12-27 Пенетрантность Horsun Vlad
WildSery даёт PLAN MERGE (SORT (SORT (AA NATURAL)), SORT (SORT (AA NATURAL))) Только я не понял, почему два сорта вложенных. Если написать без order by, select * from (select id1 from new_procedure) as q1 join (select id2 from new_procedure1) as q2 on q1.id1 = q2.id2 то план будет

Re: JOIN с процедурой

2006-12-27 Пенетрантность Oleg LOA
Konstantin R. Beliaev [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] состояние таблиц не детерминировано состоянием движка и файла БД Мощно задвинул ;-) я даже не понял :-))) В смысле наоборот, не лишнее.

Re: Диапазоны PK для филиалов

2006-12-27 Пенетрантность Kovalenko Dmitry
PS. IBP v3 - это мой шатл :-) к слову о шаттлах в общем нет в мире совершенства (с) Маленький принц Когда был переход с летнего времени на зимний, я выгреб тонну сообщений об ошибке работы программы, которая запускалась каждые десять минут для создания списка процессов, работающих на

Re: Диапазоны PK для филиалов

2006-12-27 Пенетрантность Boulitchev Aleksey
Когда был переход с летнего времени на зимний, я выгреб тонну сообщений об ошибке работы программы, которая запускалась каждые десять минут для создания списка процессов, работающих на сервере. Автор этой программулины был неприятно удивлен существованием ситуации, когда время на вполне

Re: FbEmbedded внутри exe

2006-12-27 Пенетрантность WildSery
On Wed, 27 Dec 2006 16:09:37 +0300, Oleg LOA [EMAIL PROTECTED] wrote: Херня полная, с таким же успехом извлеч требуемые DLL можно из архива при установки :-) А ещё лучше поместить DLL в BLOb той базы, к которой подключаться собираемся :D -- Сергей Смирнов.

Re: Диапазоны PK для филиалов

2006-12-27 Пенетрантность WildSery
On Wed, 27 Dec 2006 18:11:19 +0300, Boulitchev Aleksey [EMAIL PROTECTED] wrote: время по гринвичу не прыгает :) А как изнутри базы FB получить время по гринвичу? (вопрос не о той программе, конечно же) -- Сергей Смирнов.

Re: FbEmbedded внутри exe

2006-12-27 Пенетрантность Alex Cherednichenko
Привет, WildSery! Вы пишешь 27 декабря 2006: Херня полная, с таким же успехом извлеч требуемые DLL можно из архива при установки :-) W А ещё лучше поместить DLL в BLOb той базы, к которой подключаться собираемся :D ЖжжошЪ!!! :))) -- With best regards, Alex Cherednichenko.

Re: Диапазоны PK для филиалов

2006-12-27 Пенетрантность Ded
WildSery wrote: On Wed, 27 Dec 2006 18:11:19 +0300, Boulitchev Aleksey [EMAIL PROTECTED] wrote: время по гринвичу не прыгает :) А как изнутри базы FB получить время по гринвичу? (вопрос не о той программе, конечно же) Вызвать удф, которая позвонит в Гринвич и поинтересуеццо... :)

Re: Диапазоны PK для филиалов

2006-12-27 Пенетрантность WildSery
On Wed, 27 Dec 2006 18:43:59 +0300, Ded [EMAIL PROTECTED] wrote: Вызвать удф, которая позвонит в Гринвич и поинтересуеццо... :) Не подходит. В многопользовательской работе слишком много телефонных линий одновременно нужно. -- Сергей Смирнов.

Re: ��������� PK ��� �������

2006-12-27 Пенетрантность Vladimir A.Bakhvaloff
Hello, WildSery! You wrote on Wed, 27 Dec 2006 18:49:50 +0300: ?? ÷ÙÚ×ÁÔØ ÕÄÆ, ËÏÔÏÒÁÑ ÐÏÚ×ÏÎÉÔ × çÒÉÎ×ÉÞ É ÐÏÉÎÔÅÒÅÓÕÅÃÃÏ... :) W îÅ ÐÏÄÈÏÄÉÔ. ÷ ÍÎÏÇÏÐÏÌØÚÏ×ÁÔÅÌØÓËÏÊ ÒÁÂÏÔÅ ÓÌÉÛËÏÍ ÍÎÏÇÏ ÔÅÌÅÆÏÎÎÙÈ W ÌÉÎÉÊ ÏÄÎÏ×ÒÅÍÅÎÎÏ ÎÕÖÎÏ. á ÐÒÏÓÔÏ õäæ, ËÏÔÏÒÁÑ ÐÏÓÍÏÔÒÉÔ time_zone_information

Re: Диапазоны PK для филиалов

2006-12-27 Пенетрантность ArtGal
Vladimir A.Bakhvaloff [EMAIL PROTECTED] сообщил/сообщила в новостях следующее: news:[EMAIL PROTECTED] А просто УДФ, которая посмотрит time_zone_information на серваке, и из текущего времени вычтет соотв. смещение?.. /это я бэз приколов/ Посмотреть она (УДФ) посмотрит. А вот как

Re: FbEmbedded внутри exe

2006-12-27 Пенетрантность ArtGal
Alex Cherednichenko [EMAIL PROTECTED] сообщил/сообщила в новостях следующее: news:[EMAIL PROTECTED] Херня полная, с таким же успехом извлеч требуемые DLL можно из архива при установки :-) W А ещё лучше поместить DLL в BLOb той базы, к которой подключаться собираемся :D ЖжжошЪ!!! :)))

Re: try - finally в процедуре

2006-12-27 Пенетрантность Golyasov Andrey
try-finally здесь совершенно не верная аналогия. Недофетченная выборка совсем не есть исключение во время выполнения А речь ведь и не идет об исключении. Надо, чтоб часть процедуры выполнялась в любом случае. -- С уважением, Голясов Андрей.

Re: FbEmbedded внутри exe

2006-12-27 Пенетрантность Alexander A. Venikov
Hello, ArtGal! You wrote on Wed, 27 Dec 2006 19:10:14 +0300: Херня полная, с таким же успехом извлеч требуемые DLL можно из архива при установки :-) W А ещё лучше поместить DLL в BLOb той базы, W к которой подключаться собираемся :D ЖжжошЪ!!! :))) Ага. Жжотъ. A Было уже такое. A В 92-ом

Re: [SemiOFF] FB + ZeBeDee

2006-12-27 Пенетрантность Ovchinnikov Vasily
Konstantin R. Beliaev пишет: Vladimir A.Bakhvaloff wrote: Канал - 64Кб... Загажен - полностью... :( Захотел, естественно, заZeBeDee'ть его... :) ZBD тебе поможет, если у тебя пакеты большие, например идет фетч таблицы с 200 полями, а если идет выборка только одного целочисленного