Re: FB2 + MacOS — проблема с клиентом
On 05.10.2007, at 10:44, Mikalai Arapau wrote: Здравствуйте, Нужен Firebird 2.x Embedded Server для MacOS X. x86 binary либо Universal. Кстати, а для PPC можно собрать? Что-то у меня руки никак не дойдут попробовать Мож кто пробовал?
Re: FB2 + MacOS — проблема с клиентом
Mikalai Arapau ... Здравствуйте, В сборку для Мака (2.0.1CS/SS) не входит клиент. Я попробовал собрать FB 2.0.3 из сорцов, после некоторых манипуляций это удалось. Сам сервер вроде работает нормально, НО клиентская либа и embedded - не работают. При попытке коннекта пишется, что где-то вызывается освобождение памяти не там где надо/раньше времени. К Paul Beach я обращался, он сказал, что у него нету Мака, чтобы сделать сборку. Ну так дай ему доступ на свой Мак и уговори этим заняться ;) -- Хорсун Влад
Re: FB2: повтор поля в Insert
у меня сказало Column table_name.ID cannot be repeated in INSERT statement.
Re: FB2 индекс по полю при проверке поле
On Jan 23, 4:10 pm, Andrei [EMAIL PROTECTED] wrote: переход на ФБ2.0 вызвал как много приятных эмоций так и не очень приятных (особо не приятны ошибки) все-таки, лично я считаю, что так делать нельзя. у ФБ есть большая клиентская база. многие, сейчас стоят перед вопросом: если ФБ2 несовместим с ФБ1.5, то может ну его нафиг -- сменить сервер? мало ли чего разработчикам в будущем еще стукнет в голову. Когда у тебя Порочная практика. Оставлять ошибки в коде сервера для того, чтобы упростить жизнь лентяям-разработчикам прикладного ПО. А цена вопроса - достаточно разработать процедуру перехода от одной версии сервера к другой, с автоматической проверкой всех используемых запросов на нормальный prepare и условно нормальное время выполнения. Затем это дело раздается клиентам или же выполняется силами разработчиков в рамках обслуживания системы.
Re: FB2 индекс по полю при проверке поле
Ded писал(а): То есть, в заголовке болтаются не пришей, кхм, рукав, атрибуты позиций, а в позициях - заголовка? Оригинальненько, свежо. Какая ж энто по шшоту-то у нас нормальная форма-то будет - ума не приложу... ну конечно не так всё запущено ... в таблице document кроме тех полей что я написал есть ещё только: номер, дата, сумма, описание и системные поля (для проверки прав на данную запись, бух. операция и т.д.) для аттрибутов заводятся таблички для шапки накладной например Bill для позиций BillLine в которых хранятся уже необходимое кол-во атрибутов поэтому при создании любого кол-ва пользовательских документов у нас есть стандартная основа document для реализации стандартной логики а вся остальная зависит только от пользовательской настройки система живая, используется более чем 1000 клиентов для автоматизации бухгалтерии, склада, производства, торговли, зарплаты и т.д. С уважением, Леонид Агафонов
Re: FB2 индекс по полю при проверке поле IS NULL
Dmitri Kuzmenko [EMAIL PROTECTED] сообщил/сообщила в новостях следующее: news:[EMAIL PROTECTED] ну и, было принято решение - вынести nickname и еще пару полей в отдельную таблицу, связанную с основной как 1-1. Вот такая басня. Это не басня а нормальное красивое (уже ставшее классикой) решение проблемы. ИМХО. Можно избавиться от null'ов. В похожей ситуации мы заменили null'ы на -2147483647. -- Артур Галимов. ФК ФармМедСервис (Сочи).
Re: FB2 индекс по полю при проверке поле IS NULL
On Tue, 23 Jan 2007 11:54:04 +0300, ArtGal [EMAIL PROTECTED] wrote: ИМХО. Можно избавиться от null'ов. В похожей ситуации мы заменили null'ы на -2147483647. А у нас в ссылках как правило нормальные значения, типа 0-базовая запись, 1-по умолчанию, и т.д. -- Сергей Смирнов.
Re: FB2 ������ �� ���� ��� �������� ����
ÚÁÐÒÏÓ ÔÉÐÁ select * from document doc where doc.documenttypekey = :documenttypekey and doc.documentdate = :documentdate and doc.parent is null ÂÅÒÅÔ ÉÎÄÅËÓ parent DOCUMENTDATE 0,00106269924435764551 PARENT 0,0123205666113790358 DOCUMENTTYPEKEY 0,0285714287310838699 èÏÞÅÛ ÄÏÂÉÔÓÑ ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔÉ ÓÄÅÌÁÊ ÓÏÓÔÁ×ÎÏÊ ÉÎÄÅËÓ Õ ÔÅÂÑ ÕÓÌÏ×ÉÅ ÐÏ é Á ÎÅ ÐÏ éìé ÏÄÎÁËÏ. üÔÏ ÎÅ ÚÎÁÞÉÔ ÞÔÏ ÒÁÚ ÎÁ ËÁÖÄÏÅ ÐÏÌÅ ÉÎÄÅËÓ ÅÓÔØ ×ÓÅ ÂÕÄÅÔ ÌÅÔÁÔØ. õ ÔÅÂÑ ×ÉÄÁÔØ ÐÏÌÚÏ×ÁÎÉÅ ÔÁÂÌÉÃÅÊ ÔÁËÏÅ ÞÔÏ ÌÕÞØÛÅ ÓÄÅÌÁÔØ ÓÏÓÔÏ×ÎÙÅ ÉÎÄÅËÓÙ. õ ÍÅÎÑ ÅÓÔØ ÔÁÂÌÉÃÁ ÐÒÏÄÁÖ ÐÏËÕÐÏË ÄÙË ÔÁÍ ×ÙÑÓÎÉÌÏÓØ ÄÁÂÙ ×ÓÅ ÌÅÔÁÌÏ ÎÁÄÏ ÉÎÄÅËÓÙ ÓÏÓÔÁ×ÎÙÅ ÓÄÅÌÁÔØ ÄÁ ÅÝÅ ÄÌÑ ËÏÎËÒÅÔÎÙÈ ÓÌÕÞÁÅ×. éÎÏÇÄÁ ÐÒÉÈÏÄÉÔÓÑ ÓÏÚÄÁ×ÁÔØ ÉÎÄÅËÓ ÔÏÌØËÏ ÄÌÑ ËÏÎËÒÅÔÎÏÇÏ ÏÔÞÅÔÁ ÐÏÔÏÍÕÞÔÏ ÒÁÚÒÏÚÎÅÎÎÏ ÂÏÌÔÁÀÝÉÅÓÑ ÉÎÄÅËÓÙ ÜÔÏ ÌÉÛÎÉÅ ÞÔÅÎÉÑ. ÷ Ô×ÏÅÍ ÓÌÕÞÁÅ ÅÓÌÉ ÅÓÔØ ÄÁÎÎÙÅ DOCUMENTDATE PARENT DOCUMENTTYPEKEY 01,01,20071 1 01,01,2007null 2 01,01,2007null 2 01,01,2007null 3 01,01,2007null 3 01,01,2007null 3 ÐÏÌÕÞÁÅÍ ÓÅÌÅËÔÉ×ÎÏÓÔØ DOCUMENTDATE ÌÕÞÛÁÑ ×ÒÏÄÅ ËÁË ÎÏ ÅÓÌÉ ÐÏÄÂÉÒÁÔØ ÐÏ ÎÅÍÕ ÐÏÌÕÞÉÛ ×ÓÅ 6 ÞÔÅÎÉÊ ×ÚÑÔØ PARENT ÔÏ 5 ÞÔÅÎÉÊ ËÏÒÏÞÉ ÔÕÔ ÍÏÖÎÏ ËÒÕÔÉÔØ ÜÔÏ ËÁË ËÕÂÉË ÒÕÂÉË, ÎÏ ÏÂÙÞÎÏ ÅÓÔØ ÓÔÒÏÇÁÑ ÚÁÄÁÞÁ ÈÏÔÉÍ ÜÔÏ É ÅÓÌÉ ÂÕÄÅÔ ÉÎÄÅËÓ PARENT DOCUMENTDATE DOCUMENTTYPEKEY É ÓÏÏÔ×ÅÔÓÔ×ÅÎÎÏ ÉÓËÏÍÏÅ null and 01.01.2007 and 2 ÔÏ ÂÕÄÅÔ ÔÅÂÅ ÓÞÁÓÔØÅ ×ÓÅÇÏ 2 ÞÔÅÎÉÑ É ÂÅÚ ÚÁÍÏÒÏÞÅË É ÏÐÔÉÍÉÚÁÔÏÒÕ ÈÏÒÏÛÏ É ÔÅÂÅ ÓÐÏËÏÊÎÏ. äÁÌÅÅ × ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ÕÓÌÏ×ÉÊ ×ÙÂÏÒÏË ÎÁÄÏ ÒÁÓÐÏÌÏÇÁÔØ ÐÏÌÑ ÔÅ ÐÏ ËÏÔÏÒÙÍ ÌÕÞÛÅ × ËÏÎÅÃ. á ×ÏÏÂÝÅ ÐÏÍÏÖÅÔ ÔÏÌØËÏ ÁÎÁÌÉÚ ÚÁÐÒÏÓÏ× ÐÅÒÅÄ ÉÈ ×ÙÐÕÓËÏÍ × ÖÉÚÎØ.
Re: FB2 индекс по полю при проверке поле IS NULL
WildSery [EMAIL PROTECTED] сообщил/сообщила в новостях следующее: news:[EMAIL PROTECTED] On Tue, 23 Jan 2007 11:54:04 +0300, ArtGal [EMAIL PROTECTED] wrote: ИМХО. Можно избавиться от null'ов. В похожей ситуации мы заменили null'ы на -2147483647. А у нас в ссылках как правило нормальные значения, типа 0-базовая запись, 1-по умолчанию, и т.д. Фууу хилый 0. У нас круче -2147483647. Во как. 8-) -- Артур Галимов. ФК ФармМедСервис (Сочи).
Re: FB2 индекс по полю при проверке поле IS NULL
On Tue, 23 Jan 2007 15:28:32 +0300, ArtGal [EMAIL PROTECTED] wrote: У нас круче -2147483647. Чем грузины? :D -- Сергей Смирнов.
Re: FB2 индекс по полю при проверке поле
Boltik Evgeny писал(а): Хочеш добится производительности сделай составной индекс у тебя условие по И а не по ИЛИ однако. Это не значит что раз на каждое поле индекс есть все будет летать. У тебя видать ползование таблицей такое что лучьше сделать состовные индексы. У меня есть таблица продаж покупок дык там выяснилось дабы все летало надо индексы составные сделать да еще для конкретных случаев. Иногда приходится создавать индекс только для конкретного отчета потомучто разрозненно болтающиеся индексы это лишние чтения. Евгений, Вы конечно на сто процентов в данном случае правы, для данного конкретного случая так было и сделано (создан составной индекс) но эти примеры я приводил не для помощи в конкретной ситуации, переход на ФБ2.0 вызвал как много приятных эмоций так и не очень приятных (особо не приятны ограничения на использование альяса таблицы и названия, ограничения на указания в order by поля которого нет в group by, я понимаю что так писать не красиво но от этого не легче на большом кол-ве проектов проверить всю отчетность и мелкие запросики которые писались на месте у клиента практически не возможно, исправлять приходится только опытным путём после получения ошибки) мне казалось что не у нас одних проблема с индексом при указании is null (раз это конкретный случай будем перелопачивать все исходники пытаться проставить +0 при подготовке запросов) раз это укладывается в общую логику и у остальных проблем не вызывает предлагаю тему закрыть С уважением, Леонид Агафонов
Re: FB2 индекс по полю при проверке поле
переход на ФБ2.0 вызвал как много приятных эмоций так и не очень приятных (особо не приятны ограничения на использование альяса таблицы и названия, ограничения на указания в order by поля которого нет в group by, я понимаю что так писать не красиво но от этого не легче на большом кол-ве проектов проверить всю отчетность и мелкие запросики которые писались на месте у клиента практически не возможно, исправлять приходится только опытным путём после получения ошибки) все-таки, лично я считаю, что так делать нельзя. у ФБ есть большая клиентская база. многие, сейчас стоят перед вопросом: если ФБ2 несовместим с ФБ1.5, то может ну его нафиг -- сменить сервер? мало ли чего разработчикам в будущем еще стукнет в голову. Когда у тебя большой проект (платформа) на которой работают более тысячи предприятий. Когда возможности платформы позволяют пользователю (настройщику) расширять-дорабатывать-разрабатывать свой софт, то тут и начинается шоу... Советую почитать Спольского, почему Микрософт стала Микрософтом. Потому что от версии к версии поддерживала обратную совместимость, чего бы это не стоило. Зато получили доверие пользователей и разработчиков... С чем столкнулись лично мы: 1. алиасы и имена таблиц в запросах. Я согласен, что это потенциально уменьшит количество ошибок в запросах, но в настоящее время это существенно увеличило количество ошибок в программах которые до этого считались стабильными. Особенно напрягают такие случаи: SELECT gd_contact.id FROM gd_contact c WHERE... -- я понимаю, что это частный случай, но таблица то одна... 2. отсутствие встроенных функций. 3. запрет на преобразование даты к целому. 4. изменились параметры подключения к сервису для шатдауна-вывода БД в онлайн. Из-за чего старый код теперь не работает. Придется лезть и смотреть чего-там не так. 5. по иному строятся планы запросов. иногда это лучше, но иногда приводит к большой заднице...
Re: FB2 индекс по полю при проверке поле
A все-таки, лично я считаю, что так делать A нельзя. ну а истина как всегда, где-то рядом. ;) -- С уважением Кочмин Александр Firebird Foundation associate member #257
Re: FB2 индекс по полю при проверке поле
Hello, Ded! You wrote on Mon, 22 Jan 2007 21:17:08 +0300: ?? более понятный пример из жизни: ?? есть таблица документов (document) : ?? id - идентификатор ?? parent - ссылка на главный документ (если ?? parent is null то это заголовок документа ?? если заполнен то позиции документа) D Какая у людей интересная жизнь... (С). То есть, в заголовке D болтаются не пришей, кхм, рукав, атрибуты позиций, а в позициях - D заголовка? А варианты, когда документ может быть как отдельным объектом, так и отдельным пунктом документа верхнего уровня? -- -=владение русской орфографией - это как владение кунг-фу: настоящие мастера не применяют его без необходимости...=- With best regards, Nikolay Ponomarenko
Re: FB2 индекс по полю при проверке поле
Andrei [EMAIL PROTECTED] сообщил/сообщила в новостях следующее: news:[EMAIL PROTECTED] все-таки, лично я считаю, что так делать нельзя. у ФБ есть большая клиентская база. многие, сейчас стоят перед вопросом: если ФБ2 несовместим с ФБ1.5, то может ну его нафиг -- сменить сервер? Но жизнь на FB 2 и даже на 3 не кончается. Клиентская база будет расти. Лучше исправить сейчас чем тянуть старые баги для поддержания старых ошибок. -- Артур Галимов. ФК ФармМедСервис (Сочи).
Re: FB2 индекс по полю при проверке поле
On Tue, 23 Jan 2007 17:10:58 +0300, Andrei [EMAIL PROTECTED] wrote: С чем столкнулись лично мы: 2. отсутствие встроенных функций. 3. запрет на преобразование даты к целому. А что, в FB1.5 это было? 5. по иному строятся планы запросов. иногда это лучше, но иногда приводит к большой заднице... Для того и нужны баг-репорты. Если это уже не исправлено в 2.0.1. Кроме того, в существующем проекте прямо все-все запросы работают наиболее оптимальным образом, наверное? -- Сергей Смирнов.
Re: FB2 индекс по полю при проверке поле
Andrei ... все-таки, лично я считаю, что так делать нельзя. Как ? у ФБ есть большая клиентская база. многие, сейчас стоят перед вопросом: если ФБ2 несовместим с ФБ1.5, та ты шо ? несовместим, оказывается ! то может ну его нафиг -- сменить сервер? Может мало ли чего разработчикам в будущем еще стукнет в голову. Спасибо Когда у тебя большой проект (платформа) на которой работают более тысячи предприятий. А вот тут я спрошу о том, сколько ты вернул проекту, позволившему тебе исталлироваться на более тысячи предприятий ? Когда возможности платформы позволяют пользователю (настройщику) расширять-дорабатывать-разрабатывать свой софт, то тут и начинается шоу... Советую почитать Спольского, почему Микрософт стала Микрософтом. Потому что от версии к версии поддерживала обратную совместимость, чего бы это не стоило. Зато получили доверие пользователей и разработчиков... Да ? Доверие ? Гы С чем столкнулись лично мы: ... 2. отсутствие встроенных функций. Их стало меньше в 2.0 ? 3. запрет на преобразование даты к целому. Это тоже произошло в 2.0 ? 4. изменились параметры подключения к сервису для шатдауна-вывода БД в онлайн. Из-за чего старый код теперь не работает. Придется лезть и смотреть чего-там не так. Такого быть не должно. Ничего там не менялось, если это не так, то это баг, который нужно исправлять. 5. по иному строятся планы запросов. иногда это лучше, но иногда приводит к большой заднице... А давай-ка ты с сервера X версии N перейдёшь на версию N + 1, ничего не меняя, а потом будешь рассказывать об этом счастливом опыте ? -- Хорсун Влад
Re: FB2 индекс по полю при проверке поле
Nikolay Ponomarenko wrote: А варианты, когда документ может быть как отдельным объектом, так и отдельным пунктом документа верхнего уровня? И оба - экземпляры одной сущности имеющие одинаковый набор атрибутов? -- Regards. Ded.
Re: FB2 индекс по полю при проверке поле
Hello, Andrei! Andrei wrote: все-таки, лично я считаю, что так делать нельзя. у ФБ есть большая клиентская база. многие, сейчас стоят перед вопросом: если ФБ2 несовместим с ФБ1.5, то может ну его нафиг -- сменить сервер? забей. точно такая же фигня была в момент появления Firebird 1.02. Где стали запрещены запросы с неуказанием алиаса таблицы, если в запросе попадались таблицы с одинаковыми именами столбцов. Я встречал приложения, где таких запросов был каждый второй. Но их легко исправлять - можно тупо переписать все запросы с алиасами таблиц, и все. А вот исправление парсера, который допускал выполнение кривых запросов - это тоже правильное дело. 1. алиасы и имена таблиц в запросах. Я согласен, что это потенциально уменьшит количество ошибок в запросах, но в настоящее время это существенно увеличило количество ошибок в программах которые до этого считались стабильными. Особенно напрягают такие случаи: ой, фигню вы пишете. я писать алиасы в запросах приучился еще с конца 90х годов. И у меня есть база, созданная в 1997 году, которая кочует по всем версиям IB/FB ВООБЩЕ БЕЗ ПЕРЕДЕЛОК ИЛИ ИСПРАВЛЕНИЙ. То есть, и вы тоже научитесь писать запросы правильно. SELECT gd_contact.id FROM gd_contact c WHERE... -- я понимаю, что это частный случай, но таблица то одна... ну и чего это за бред написан? 4. изменились параметры подключения к сервису для шатдауна-вывода БД в онлайн. Из-за чего старый код теперь не работает. Придется лезть и смотреть чего-там не так. а еще не работает gbak -r 5. по иному строятся планы запросов. иногда это лучше, но иногда приводит к большой заднице... нет в жизни счастья. -- Dmitri Kouzmenko, www.ibase.ru, (495) 953-13-34
Re: FB2 индекс по полю при проверке поле
Hello, Andrei said the following on 23.01.2007 16:10: все-таки, лично я считаю, что так делать нельзя. Как делать нельзя? Новые версии выпускать нельзя? у ФБ есть большая клиентская база. многие, сейчас стоят перед вопросом: если ФБ2 несовместим с ФБ1.5, то может ну его нафиг -- сменить сервер? И огрести все то же самое. Иногда, даже еще в больших размерах. Советую почитать Спольского, почему Микрософт стала Микрософтом. А разве тут кто-то декларировал желание стать Микрософтом? Меня, например, все перечисленные изменения радуют (кроме падения производительности запросов, конечно, но я у себя такого падения не наблюдал). Старые проекты которые тяжело перевести на 2.0 я оставлю на 1.5.x - вон, вроде бы и 1.5.4 будет выпущен. И они как работали так и будут продолжать работать. -- Oleg
Re: FB2 индекс по полю при проверке поле
Ded писал(а): под улюлюканье и восторженные вопли лепильщиков прог на коленке, идёт по пути приделывания тучи прибамбасов, позволяющих потребителю забыть про что такое реляционные модели и сиквел, не заниматься проектированием и оставлять свои мозги на уровне палки и верёвки. немножко оскорбительны Ваши выражения приведенные выше да и в других постах к сожалению возможно конечно Вы единственный человек обладающий мегаопытом и пишущий мегаправильно мегасистему я в общем-то уважительно к Вам отношусь из-за того что большинство Ваших постов (когда они по теме) действительно правильны и во многом повлияли на развитие ФБ, но если можно давайте более уважительно относиться к собеседникам, большинство из нас не разработчики ФБ а пользователи данного продукта, со своими проблемами иногда хочется написать про проблемы вызванные оптимизатором, обсудить конкретные проблемы падения базы но как представишь себе что тебе ответят в 50% случаев хамством, руки сразу опускаются, а потом друг на друга киваем, что вяло тестируют мы раньше часто использовали Yaffil нас очень устраивало и быстродействие и наличие оптимизации под винду и встроенные функции, при попытке тестирования наших баз на ФБ2 альфа/бета мы уже тогда столкнулись со сложностью переноса из-за ограничений на синтаксис введенный в ФБ это осложнило тестирование перехода и затянуло сам переход но при росте баз на Yaffl мы столкнулись со специфической проблемой превышения 2Гб процессом при большом кол-ве одновременных запросов, что начало приводить к катострофическим последствиям (для нас), базы были срочно переведены на ФБ2, всё работает полёт нормальный :), но зачастую мы имеем совершенно другую логику оптимизатора (я всё про свои нуллы) и ошибки из-за мелочных изменений в синтаксисе, что практически парализовало работу нескольких сотрудников отсюда и раздражение несовместимостью ладно всё это лирика С уважением, Леонид Агафонов
Re: FB2 индекс по полю при проверке поле
Hello, Леонид! Леонид Агафонов wrote: немножко оскорбительны Ваши выражения приведенные выше да и в других постах к сожалению это было написано НЕ ВАМ, и более того, это была абстрактная фраза, причем ПРО РАЗВИТИЕ СЕРВЕРА. Читайте, пожалуйста, внимательнее. Привожу полную цитату: Andrei wrote: 5. по иному строятся планы запросов. иногда это лучше, но иногда приводит к большой заднице... Ded wrote: Сам от этого страдаю. Но страдаю столько раз, сколько менял версию. Ничего нового в этом нет. К сожалению, вместо наведения порядка раз и навсегда в набивших оскомину местах, развитие сервера, под улюлюканье и восторженные вопли лепильщиков прог на коленке, идёт по пути приделывания тучи прибамбасов, позволяющих потребителю забыть про что такое реляционные модели и сиквел, не заниматься проектированием и оставлять свои мозги на уровне палки и верёвки. -- Dmitri Kouzmenko, www.ibase.ru, (495) 953-13-34
Re: FB2 индекс по полю при проверке поле
Dmitri Kuzmenko wrote: это было написано НЕ ВАМ, и более того, это была абстрактная фраза, причем ПРО РАЗВИТИЕ СЕРВЕРА. Всё равно вспылил, приношу извинения. Пожалуй надо помолчать какое-то время. Задрало всё на работе, язва опять обострилась :( -- Regards. Ded.
Re: FB2 индекс по полю при проверке поле IS NULL
Леонид Агафонов wrote: Добрый день! Есть запрос select * from test_table c where c.cost = 0 and c.parent is null FB2 берёт индекс по parent селективность индекса по полю cost 0,45242726628202945 селективность индекса по полю PARENT 0,0149521531511709327 Я когда-то с индексами по выражениям пытался мутить что-то вроде такого: делаете индекс вычисляемый COALESCE(parent, -Id) а потом говорите: select * from test_table c where c.cost = 0 and (COALESCE(c.parent, -c.Id) = -c.Id AND c.parent is null)
Re: FB2 индекс по полю при проверке поле IS NULL
Ой, не, глупостьи неправду написал. Там не COALESCE(c.parent, -c.Id) было, а результат подзапроса к другой таблице. Тут такое не прокатит к сожалению :-(
Re: FB2 Сообщение invalid SEND request
Леонид Агафонов ... Добрый день! При работе с базой на сервере в логе появилось сообщение (два раза): FBSERVER (Server) Mon Jan 22 17:49:44 2007 Database: E:\TEST.FDB internal gds software consistency check (invalid SEND request (167), file: exe.cpp line: 494) FBSERVER (Server) Mon Jan 22 17:49:44 2007 Database: E:\TEST.FDB internal gds software consistency check (invalid SEND request (167), file: exe.cpp line: 494) После этого к базе подключиться было не возможно (загрузка процессора 0%) Что может означать это сообщение? http://tracker.firebirdsql.org/browse/CORE-1080 -- Хорсун Влад
Re: FB2 индекс по полю при проверке поле IS NULL
Леонид Агафонов wrote: Есть запрос select * from test_table c where c.cost = 0 and c.parent is null FB2 берёт индекс по parent Только по нему или по обоим полям? я кончено понимаю что наверное теперь is null это такое-же значение как и любое другое Почему теперь? Оно всегда было таким же. -- Дмитрий Еманов
Re: FB2 Сообщение invalid SEND request
Леонид Агафонов wrote: При работе с базой на сервере в логе появилось сообщение (два раза): FBSERVER (Server) Mon Jan 22 17:49:44 2007 Database: E:\TEST.FDB internal gds software consistency check (invalid SEND request (167), file: exe.cpp line: 494) FBSERVER (Server) Mon Jan 22 17:49:44 2007 Database: E:\TEST.FDB internal gds software consistency check (invalid SEND request (167), file: exe.cpp line: 494) Что может означать это сообщение? ** * v2.0.1 ** * Fixed bug CORE-1080 Bugcheck 167 (invalid SEND request) in SS when many parallel attachments begin to execute trigger not loaded into metadata cache Contributor(s): Vlad Horsun horsun at kdb.dp.ua -- Дмитрий Еманов
Re: FB2 индекс по полю при проверке поле IS NULL
On Mon, 22 Jan 2007 19:29:45 +0300, Леонид Агафонов [EMAIL PROTECTED] wrote: Есть запрос select * from test_table c where c.cost = 0 and c.parent+0 is null
Re: FB2 индекс по полю при проверке поле IS NULL
Леонид Агафонов ... Добрый день! Есть запрос select * from test_table c where c.cost = 0 and c.parent is null FB2 берёт индекс по parent селективность индекса по полю cost 0,45242726628202945 селективность индекса по полю PARENT 0,0149521531511709327 Почти на 2 порядка лучше, однако я кончено понимаю что наверное теперь is null это такое-же значение как и любое другое но может это не очень хорошо? В данном запросе - это отлично Не знаю как у других :) но на наших задачах очень много создано полей/атрибутов в справочниках и документах где заполнение всех полей для каждого состояния не обязательно естественно возникают таблицы у которых на 5-6 млн. записей значения многих полей на 80% null И шо ? есть ли возможность отключить использование такого поведения в настройках Зачем ? -- Хорсун Влад
Re: FB2 индекс по полю при проверке поле
Леонид Агафонов wrote: более понятный пример из жизни: есть таблица документов (document) : id - идентификатор parent - ссылка на главный документ (если parent is null то это заголовок документа если заполнен то позиции документа) Какая у людей интересная жизнь... (С). То есть, в заголовке болтаются не пришей, кхм, рукав, атрибуты позиций, а в позициях - заголовка? Оригинальненько, свежо. Какая ж энто по шшоту-то у нас нормальная форма-то будет - ума не приложу... -- Regards. Ded.
Re: FB2 индекс по полю при проверке поле IS NULL
Это старо как мир, а не решение проблемы. Дмитрий
Re: FB2 Сообщение invalid SEND request
Леонид Агафонов wrote: ну и встречный вопрос где взять к обоим самым главным людям :) Выйдет на днях. -- Дмитрий Еманов
Re: FB2 индекс по полю при проверке поле IS NULL
Hello, DmitryLe! DmitryLe wrote: Это старо как мир, а не решение проблемы. согласен, старо, и я про это уже писал где-то в 2000 году :-) только почему это не решение проблемы? -- Dmitri Kouzmenko, www.ibase.ru, (495) 953-13-34
Re: FB2 + DB_KEY - проблемки парсера
Hello, WildSery! WildSery wrote: Да, всегда так было. Но объясни, зачем такая избирательность, что только в триггере без алиаса нельзя, а в запросе и в процедуре можно? например. select rdb$db_key from table. все ок. Rdb$db_key имеет контекст table. теперь пишем в триггере то же самое. чей контекст у rdb$db_key? триггера? или table? это я к тому, что select field from table будучи написанное в триггере, может означать что 1. field это поле таблицы, для которой сработал триггер 2. field это поле table -- Dmitri Kouzmenko, www.ibase.ru, (495) 953-13-34
Re: FB2 + DB_KEY - проблемки парсера
On Wed, 17 Jan 2007 12:52:16 +0300, Dmitri Kuzmenko [EMAIL PROTECTED] wrote: select field from table будучи написанное в триггере, может означать что 1. field это поле таблицы, для которой сработал триггер Это в каком же случае оно так означает? Я думал, что только с приставками OLD. и NEW. можно использовать. Какие тут могут быть разночтения? -- Сергей Смирнов.
Re: FB2 + DB_KEY - проблемки парсера
теперь пишем в триггере то же самое. чей контекст у rdb$db_key? триггера? или table? Однозначно таблицы, т.к. для триггера было бы NEW. или OLD.
Re: FB2 + DB_KEY - проблемки парсера
On Tue, 16 Jan 2007 19:00:51 +0300, sasha [EMAIL PROTECTED] wrote: то уже не компиллируется: Не скомпилируется, кстати, если и вообще алиаса нет у таблицы, типа SELECT RDB$DB_KEY FROM MyTable INTO :EXISTING_DB_KEY; -- Сергей Смирнов.
Re: FB2 + DB_KEY - проблемки парсера
Не скомпилируется, кстати, если и вообще алиаса нет у таблицы, типа SELECT RDB$DB_KEY FROM MyTable INTO :EXISTING_DB_KEY; Та я знаю. А раньше вроде работало...
Re: FB2 + DB_KEY - проблемки парсера
Привет! А почему когда я пишу в триггере SELECT T.RDB$DB_KEY FROM MyTable T WHERE ... INTO :EXISTING_DB_KEY; то у меня всё компиллируется, а если так SELECT RDB$DB_KEY FROM MyTable T WHERE ... INTO :EXISTING_DB_KEY; то уже не компиллируется: А потому, что обычным смертным знать по этот ключик не положено, и для них его нету. Хошь юзать хак - не придирайся и пиши алиас, не хочешь - используй PK. -- Best regards, Sergeymailto:[EMAIL PROTECTED]
Re: FB2 + DB_KEY - проблемки парсера
А потому, что обычным смертным знать по этот ключик не положено, и для них его нету. Так его ж IBExpert активно показывает в списке полей. Мне чё-то кажется что мало кто о нём не знает.
Re: ������������� ��������� � ��������� �������� � FB2
òÁÎØÛÅ ÄÏ FB2, ÅÓÌÉ ÎÅ ÏÛÉÂÁÀÓØ, ÎÁÓÔÏÑÔÅÌØÎÏ ÎÅ ÒÅËÏÍÅÎÄÏ×ÁÏÌÏÓØ ÓÏ×ÍÅÝÁÔØ ÏÄÎÏ×ÒÅÍÅÎÎÙÊ ÄÏÓÔÕÐ Ë ÂÁÚÅ ÐÏ ÌÏËÁÌØÎÎÏÍÕ É ÕÄÁÌÅÎÎÏÍÕ ÐÒÏÔÏËÏÌÁÍ. îÅ ÐÏÍÎÀ ÔÁËÏÇÏ. http://www.ibase.ru/devinfo/dontdoit.htm - 1 ÐÕÎËÔ ôÁÍ ÎÅ ÓËÁÚÁÎÏ Ñ×ÎÏ ÐÒÏ ÌÏËÁÌØÎÏÅ É ÕÄÁÌÅÎÎÏÅ ÐÏÄËÌÀÞÅÎÉÑ, ÇÏ×ÏÒÉÔÓÑ ÐÒÏ ËÏÎÎÅËÔ Ë ÏÄÎÏÊ ÂÁÚÅ Ó ÒÁÚÎÙÍÉ ÐÕÔÑÍÉ. ñ ÐÒÅÄÐÏÌÏÖÉÌ, ÞÔÏ c:\database.fdb É localhost:c:\database.fdb - ÒÁÚÎÙÅ ÐÕÔÉ Ó ÔÏÞËÉ ÚÒÅÎÉÑ ÓÅÒ×ÅÒÁ. ðÏÓÌÅ ÚÁÄÅÊÓÔ×Ï×ÁÎÉÑ XNET × FB2 ÜÔÉ ÒÅËÏÍÅÎÄÁÃÉÉ ÏÓÔÁÌÉÓØ × ÓÉÌÅ ÉÌÉ FB2 ÔÅÐÅÒØ ×ÓÅ ËÏÒÒÅËÔÎÏ ÒÁÚÒÕÌÉ×ÁÅÔ É ÂÅÓÐÏËÏÉÔÓÑ ÎÁ ÜÔÏÔ ÓÞÅÔ ÔÅÐÅÒØ ÉÚÌÉÛÎÅ? óÍÏÔÒÑ ËÁËÉÅ ÂÅÓÐÏËÏÊÓÔ×Á ÉÍÅÀÔÓÑ ××ÉÄÕ. âÅÓÐÏËÏÉÔ ÐÏ×ÒÅÖÄÅÎÉÅ ÂÁÚÙ ×ÐÌÏÔØ ÄÏ ÅÅ ÐÏÌÎÏÇÏ ÕÎÉÞÔÏÖÅÎÉÑ (Ó). -- Marat Zigangirov
Re: ������� ��������� ������� (FB2 RC1 CS Linux)
á ÎÁ Ä×ÏÒÅ RC4... é ÞÔÏ ÏÎÉ ÔÁÍ ×ÓÑËÕÀ ÆÉÇÎÀ ÍÏÌÏÔÉÌÉ ÁÖ ÅÝ£ 3 RC ×ÙÐÕÓÔÉÌÉ, ÎÁ ÆÉÇÁ, ÒÅÌÉÚÉÌÉ ÂÙ ÐÅÒ×ÙÊ... äÁ, ÎÅ ÚÒÑ ÏÎÉ RC4 ×ÙÐÕÓÔÉÌÉ. ðÏÓÔÁ×ÉÌ RC4, ÒÁÂÏÔÁÅÔ ÎÏÒÍÁÌØÎÏ ÂÅÚ ÏÂÒÙ×Ï×. óÐÁÓÉÂÏ
Re: FB2 - ������ � ����������
Kovalenko Dmitry [EMAIL PROTECTED] wrote: Раньше эти колонки имели фактичеческую кодировку OCTETS, то есть их размер не зависил ни от чего и был, зачастую, равен 31 байт. Дык это был очевидный баг. -- Дмитрий Еманов --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 - измена с кодировками
Раньше эти колонки имели фактичеческую кодировку OCTETS, то есть их размер не зависил ни от чего и был, зачастую, равен 31 байт. Дык это был очевидный баг. Ха, я вот забацал запрос вида SELECT f.RDB$FIELD_NAME, f.RDB$CHARACTER_LENGTH, f.RDB$FIELD_LENGTH from rdb$fields f where f.RDB$SYSTEM_FLAG=1 and f.RDB$FIELD_TYPE in (14,37) и подивился с NULL-а во второй колонке и значению в третьей. Как на FB2, так и на FB1.5 Вопрос, откуда FB2 берет 93 байта под колонки с именами, если у них физическая длина ограничена 31 байтом? Коваленко Дмитрий. --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 - ������ � ����������
Kovalenko Dmitry [EMAIL PROTECTED] wrote: Вопрос, откуда FB2 берет 93 байта под колонки с именами, если у них физическая длина ограничена 31 байтом? Он плюет на FIELD_LENGTH и тупо умножает длину поля на три. Так специально было сделано, иначе вылезали какие-то грабли с совместимостью. -- Дмитрий Еманов --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 - ???�???�???� N? ????????N????????�????
??, ?? FB2 С чем-чем там измена ? :) Слушайте, подскажите, что там глупому Fidolook подправить, чтоб он такие штуки больше не делал - даю просто Reply to newsgroup, он кодировку портит а я писал, что если не ошибаюсь, то 93 байта будут только для lc_ctype=NONE, для остальных (lc_ctype=WIN1251 или UNICODE_FSS) - согласно правил. Роман --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 - измена с кодировками
Поправочка, иик и вопрос в конце В FB2 размер буфера (XSQLVAR::sqllen) под текстовые колонки вычисляется по формуле (размер колонки в символах) умножить на (размер символа в байтах для текущей кодовой страницы подключения) Если кодовая страница подключения - NONE, то берется родная кодировка колонки Если колонка имеет кодировку OCTETS или NONE, то берется родная кодировка колонки Нарвался на текстовые системные колонки с кодировкой NONE :) Вопрос - почему я не могу подключиться к базе с использованием кодовой страницы OCTETS? Коваленко Дмитрий. --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 RC3?
Скачала свежий билд, там написано RC3, это что означает? А откуда его все качают? --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
Serge Buzadzhy [EMAIL PROTECTED] wrote: Ну ка перепиши изначальный запрос select * from test_null t where (t.test_str=:test_null0) на запрос с or is null так чтобы при нулл параметре он давал t.test_str is null... и при этом еще и работал. А я полюбуюсь. select * from test_null t where (t.test_str = :param) or (t.test_str is null and cast(:param as char(1)) is null) P.S. YA и FB2 :-) P.P.S. Работать будет медленно, т.к. индекс тут не светит. -- Дмитрий Еманов --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
NP Э нет - просил, это когда я вручную установил то свойство. А я не NP просил, я тока квери создал, который ПО УМОЛЧАНИЮ изменяется мой NP запрос... Имхо такой параметр никак не должен быть включенным по NP умолчанию, а то скатимся ко всяким ANSI_NULLS :)) эээ нет. И так переход с версии на версию в FibPlus это большая проблема. А если еще при добавлении новых полей у компонентов не думать о тех кто переходит на новую версию, то вообще нафиг. Кому очень надо, добавите еще одну птичку в tools FibPlus Preferences и успокойтесь. -- С уважением Кочмин Александр --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
Nikolay Ponomarenko пишет: Hello, Serge! You wrote on Tue, 20 Jun 2006 17:13:25 +0300: ?? Я в курсе :) Вообще-то и or is null достаточно нагляден. SB Кто нагляден? Кто or is null? :) SB Ну ка перепиши изначальный запрос SB select * from test_null t where (t.test_str=:test_null0) SB на запрос с or is null так чтобы при нулл параметре он давал SB t.test_str is null... и при этом еще и работал. А я полюбуюсь. select * from test_null t where (t.test_str=:test_null0) or (t.test_str is null) даст мне то, что я хочу, т.к. при нулл параметре (t.test_str=:test_null0) выпадает, разве не так? Ай молодца! А при НЕ нулл параметре оно тоже даст тебе то что ты хочешь? :) Про сложности :test_null0 is null ((coalesce(:test_null0,cast(null as integer)) is null)) я в курсе, но ведь оно мне и не нужно... Оно тебе нужно. Только ты об этом не хочешь знать. :) ?? Когда его не предлагают без спроса :)) SB Дык ты попросил. Просто об этом не знал. Опция не просить не взведена. Э нет - просил, это когда я вручную установил то свойство. А я не просил, я тока квери создал, который ПО УМОЛЧАНИЮ изменяется мой запрос... Имхо такой параметр никак не должен быть включенным по умолчанию, а то скатимся ко всяким ANSI_NULLS :)) Эта фича сделана не просто так. Без нее парадигма датасета как набора SelectSQL,InsertSQL,UpdateSQL и т.д. не до конца работоспособна. Она остается работоспособной только если условия ограничения по первичному ключу таблицы. Если же условие where по всем или части полей, где может быть нулл, то... UpdateSQL тихо не работает, поскольку условие всегда будет давать фальсе. И решить путем хитрого написания запроса ДО ФБ2 не представлялось возможным. Так что... эта фишка была с самых первых плюсов, и далее всегда будет по умолчанию. Я еще не самоубийца чтоб сознательно портить совместимость с пред версиями. Удачи --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
Dmitry Yemanov пишет: Serge Buzadzhy [EMAIL PROTECTED] wrote: Ну ка перепиши изначальный запрос select * from test_null t where (t.test_str=:test_null0) на запрос с or is null так чтобы при нулл параметре он давал t.test_str is null... и при этом еще и работал. А я полюбуюсь. select * from test_null t where (t.test_str = :param) or (t.test_str is null and cast(:param as char(1)) is null) P.S. YA и FB2 :-) P.P.S. Работать будет медленно, т.к. индекс тут не светит. Ишь ты. Точно работит. :) Жаль что это для меня уже мало что меняет. :))) --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
Hello, Serge! You wrote on Wed, 21 Jun 2006 10:27:49 +0300: ?? select * from test_null t where (t.test_str=:test_null0) or ?? (t.test_str is null) даст мне то, что я хочу, т.к. при нулл параметре ?? (t.test_str=:test_null0) выпадает, разве не так? SB Ай молодца! А при НЕ нулл параметре оно тоже даст тебе то что ты SB хочешь? :) ?? Про сложности :test_null0 is null ((coalesce(:test_null0,cast(null as ?? integer)) is null)) я в курсе, но ведь оно мне и не нужно... SB Оно тебе нужно. Только ты об этом не хочешь знать. :) Ну [оправдываясь], меня волновал именно нулл параметр :)) SB Эта фича сделана не просто так. Без нее парадигма датасета как набора SB SelectSQL,InsertSQL,UpdateSQL и т.д. не до конца работоспособна. SB Она остается работоспособной только если условия ограничения по SB первичному ключу таблицы. Если же условие where по всем или части SB полей, где может быть нулл, то... UpdateSQL тихо не работает, SB поскольку условие всегда будет давать фальсе. И решить путем хитрого SB написания запроса ДО ФБ2 не представлялось возможным. Так что... эта SB фишка была с самых первых плюсов, и далее всегда будет по умолчанию. Я SB еще не самоубийца чтоб сознательно портить совместимость с пред SB версиями. Ок, понял. ЗЫ теперь ясно кто виноват - те, кто не любит суррогаты :) -- -=Толстяки живут меньше. Зато едят больше=- With best regards, Nikolay Ponomarenko --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
Hello, Plotnikov! You wrote on Tue, 20 Jun 2006 08:31:07 +0500: ?? Надо было соглашаться на == ?? : PY Дык в итоге то сделали.. в смысле из дистинкт фром. Так, хоть и PY длиннее, но зело нагляднее Я в курсе :) Вообще-то и or is null достаточно нагляден. Когда его не предлагают без спроса :)) Но с == вопросов меньше. -- -=Мир житейский - это часы, гири которых - деньги, а маятник - женщины (с) Г.Э. Лессинг=- With best regards, Nikolay Ponomarenko --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
Nikolay Ponomarenko пишет: Hello, Plotnikov! You wrote on Tue, 20 Jun 2006 08:31:07 +0500: ?? Надо было соглашаться на == ?? : PY Дык в итоге то сделали.. в смысле из дистинкт фром. Так, хоть и PY длиннее, но зело нагляднее Я в курсе :) Вообще-то и or is null достаточно нагляден. Кто нагляден? Кто or is null? :) Ну ка перепиши изначальный запрос select * from test_null t where (t.test_str=:test_null0) на запрос с or is null так чтобы при нулл параметре он давал t.test_str is null... и при этом еще и работал. А я полюбуюсь. Когда его не предлагают без спроса :)) Дык ты попросил. Просто об этом не знал. Опция не просить не взведена. --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
Когда его не предлагают без спроса :)) Дык ты попросил. Просто об этом не знал. Опция не просить не взведена. а как бы вырубить в библиотеке это умолчание нах? --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 и null параметры
Весело... На приведенных метаданных, данных и запросе подтверждается. --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
NP Hello, All! NP Пример тестовой БД внизу. NP Запрос такого вида NP select * from test_null t where (t.test_str=:test_null0) NP в случае, если параметр задать равным null возвращает NP строки, где TEST_STR=NULL NP Т.е. сравнение нуллов дает true. Я в растерянности. NP FB2 RC2 - на свежих сборках не тестил. NP Проверялось в Эксперте и последних ФИБах по-моему эти инструменты умеют преобразовывать этот запрос в запрос вида select * from test_null t where (t.test_str is null) Что и делают исправно. Достоинство это или недостаток, сказать трудно. Но по-моему больше достоинство чем недостаток. И уж никак не баг FB -- С уважением Кочмин Александр --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
по-моему эти инструменты умеют преобразовывать этот запрос в запрос вида select * from test_null t where (t.test_str is null) Что и делают исправно. если Sql Monitor в эксперте не врет, ничего не преобразовывается Достоинство это или недостаток, сказать трудно. Но по-моему больше достоинство чем недостаток. вообще то по стандарту даже сравнение null с null должно давать в результате null... так что имхо недостаток --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 и null параметры
Hello, Nikolay! You wrote to All on Mon, 19 Jun 2006 10:10:40 +0300: NP Проверялось в Эксперте и последних ФИБах Это и есть ответ - и там и там используются ФИБы, которые сами заменяют в тексте запроса (t.test_str=:test_null0) на (t.test_str is Null). Фича так сказать :)) -- With best regards, Yuri Grabar. --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
Привет, Yuri! Вы пишешь к Nikolay Ponomarenko 19 июня 2006: NP Проверялось в Эксперте и последних ФИБах YG Это и есть ответ - и там и там используются ФИБы, которые сами заменяют в YG тексте запроса YG (t.test_str=:test_null0) на (t.test_str is Null). Фича так сказать :)) За эксперта, лучше таки спросить у Хвастунова. -- With best regards, Alex Cherednichenko. --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
Hello, Alexandr! You wrote to Nikolay Ponomarenko on Mon, 19 Jun 2006 14:49:49 +0700: AK по-моему эти инструменты умеют преобразовывать этот запрос в запрос AK видаselect * from test_null t where (t.test_str is null) AK Что и делают исправно. AK Достоинство это или недостаток, сказать трудно. Но по-моему больше AK достоинство чем недостаток. И уж никак не баг FB Да, судя по косвенным призанкам(на полуторке тоже самое) виноваты фибы. Но я все еще в шоке - менять(по умолчанию) запрос, на тот, который возвращает неверные данные!? В фибах можно оправдать, а вот Эксперт!? Прав был дедеушка Дейт, все зло в мире от нуллов. -- -=Жизнь - штука тяжелая - ее еще никто не перенес...=- With best regards, Nikolay Ponomarenko --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
AK по-моему эти инструменты умеют преобразовывать этот запрос в запрос AK вида select * from test_null t where (t.test_str is null) Что и делают AK исправно. AK если Sql Monitor в эксперте не врет, ничего не преобразовывается а он может смотрит ДО ТОГО как. Я бы посоветовал сделать SP из этого запроса и посмотреть в ней. -- С уважением Кочмин Александр --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
NP Прав был дедеушка Дейт, все зло в мире от нуллов. не от нуллов, а от неумелого их применения. -- С уважением Кочмин Александр --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
запусти select * from test_null t where (t.test_str = NULL) ну или для чистоты эксперимента ... Мы пойдем другим путем. :) Попробовал слепить приложение с TIBQuery, а не с фибами - все нормально. Получается, фибы шутят. Повбывав бы... --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
AK Повбывав бы... убей себя. TFIBCustomDataSet.Options poNoForceIsNull to disable substitution of NULL parameters by 'is Null' statement. -- С уважением Кочмин Александр --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
Hello, Alexandr! You wrote to Nikolay Ponomarenko on Mon, 19 Jun 2006 15:25:33 +0700: NP Прав был дедеушка Дейт, все зло в мире от нуллов. AK не от нуллов, а от неумелого их применения. С прописными истинами все мы знакомы ;) Я вот и хочу, иметь возможность применять их умело, а кто-то начинает думать за меня... -- -=Доктор, я не выговариваю звук @!!!=- With best regards, Nikolay Ponomarenko --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
убей себя. TFIBCustomDataSet.Options poNoForceIsNull to disable substitution of NULL parameters by 'is Null' statement. пошел пить йад и топицца в сортире. успокаивает, что я там буду не один :) --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
TFIBCustomDataSet.Options poNoForceIsNull to disable substitution of NULL parameters by 'is Null' statement. пошел пить йад и топицца в сортире. успокаивает, что я там буду не один :) Да - опция конечно интересная, но вот ее default-значение не совсем удачное. :-) Слишком большой интеллект может порой и до белого каления довести. --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
TFIBCustomDataSet.Options poNoForceIsNull to disable substitution of NULL parameters by 'is Null' statement. пошел пить йад и топицца в сортире. успокаивает, что я там буду не один :) Да - опция конечно интересная, но вот ее default-значение не совсем удачное. :-) Слишком большой интеллект может порой и до белого каления довести. -- Я использую бесплатную версию SPAMfighter для частных пользователей. Программа удалила 1040 эл. письма спама, полученные до настоящего времени. Пользователи платной версии не имеют этого сообщения в их электронных письмах. Попробовать:http://www.spamfighter.com/lru --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
Hello, Alex! You wrote to Yuri Grabar on Mon, 19 Jun 2006 12:16:08 +0400: AC Привет, Yuri! AC Вы пишешь к Nikolay Ponomarenko 19 июня 2006: NP Проверялось в Эксперте и последних ФИБах YG Это и есть ответ - и там и там используются ФИБы, которые сами YG заменяют в тексте запроса (t.test_str=:test_null0) на (t.test_str is YG Null). Фича так сказать :)) AC За эксперта, лучше таки спросить у Хвастунова. Можно, конечно, но я и так знаю :) Там версия FIB+ 3. Древняя, доработанная и успешно работающая. -- With best regards, Yuri Grabar. --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
Nikolay Ponomarenko wrote: NP Прав был дедеушка Дейт, все зло в мире от нуллов. AK не от нуллов, а от неумелого их применения. С прописными истинами все мы знакомы ;) Я вот и хочу, иметь возможность применять их умело, а кто-то начинает думать за меня... А ламеры сильно просють. Не люблють они нуллов. И денешку плотють. -- Regards. Ded. --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
Ded [EMAIL PROTECTED] сообщил/сообщила в новостях следующее: news:[EMAIL PROTECTED] А ламеры сильно просють. Не люблють они нуллов. И денешку плотють. Ламеры?! Денешку плотють?! Не может быть!!! :))) --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
Hello, Ded! You wrote on Mon, 19 Jun 2006 15:14:52 +0400: NP Прав был дедеушка Дейт, все зло в мире от нуллов. AK не от нуллов, а от неумелого их применения. ?? ?? С прописными истинами все мы знакомы ;) ?? Я вот и хочу, иметь возможность применять их умело, ?? а кто-то начинает думать за меня... D А ламеры сильно просють. Не люблють они нуллов. И денешку плотють. Надо было соглашаться на == : -- -=Не бойся, если ты один. Бойся, если ты ноль.=- With best regards, Nikolay Ponomarenko --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: FB2 null
Надо было соглашаться на == : Дык в итоге то сделали.. в смысле из дистинкт фром. Так, хоть и длиннее, но зело нагляднее --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: ����� FB2 RC3?
Маташин А.В. [EMAIL PROTECTED] wrote: Скачала свежий билд, там написано RC3, это что означает? Что скоро будет официальный RC3 :-) -- Дмитрий Еманов --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: � ��� ���� ������ � FB2
Hello, Nikolay! You wrote on Tue, 23 May 2006 19:34:50 +0300: NT Нижеследующий запрос будет быстрее в полуторке или в двойке? А проверить и самостоятельно расставить все точки над Ё? Сначала написал, потом проверил. Долго и в 1.5.3 и в 2.0, вот интересно, как народ выкручивается из таких ситуаций (имеется в виду select from procedure, где procedure: select from table), чтобы все это ускорить
Re: ����� ��� ����� � FB2 RC1
sasha [EMAIL PROTECTED] wrote: þÔÏ-ÔÏ ÞÅÍ ÂÏÌØÛÅ Ñ ÕÇÌÕÂÌÑÀÓØ × DERIVED TABLES, ÔÅÍ ÓÔÒÁÎÎÅÅ ÏÎÉ ÍÎÅ ËÁÖÕÔÓÑ. ô×ÏÉ ÐÒÏÂÌÅÍÙ, ÕÖ ÉÚ×ÉÎÉ. SELECT T.ID, T.NAME, COALESCE(SUM_RUBLI, 0), COALESCE(SUM_UE, 0) FROM TOVARI T LEFT JOIN ( SELECT SUM(SUM_RUBLI), SUM(SUM_UE) FROM PRODAGI PR WHERE PR.TOVAR_ID = T.ID) AS P (SUM_RUBLI, SUM_UE) ON 1 = 1 SELECT T.ID, T.NAME, COALESCE(SUM_RUBLI, 0), COALESCE(SUM_UE, 0) FROM TOVARI T LEFT JOIN ( SELECT PR.TOVAR_ID, SUM(SUM_RUBLI), SUM(SUM_UE) FROM PRODAGI PR GROUP BY PR.TOVAR_ID) AS P (ID, SUM_RUBLI, SUM_UE) ON P.ID = T.ID íÎÅ ËÁÖÅÔÓÑ ÞÔÏ ÜÔÏ ÐÒÉÚÎÁË ÔÏÇÏ ÞÔÏ ÒÅÁÌÉÚÁÃÉÑ ÜÔÉÈ DERIVED TABLES ÎÅ ÏÞÅÎØ ÈÏÒÏÛÁÑ É ÓÍÙÓÌ ÓÉÎÔÁËÓÉÓÁ JOIN (SELECT ...) ËÁÖÅÔÓÑ ÓÏÍÎÉÔÅÌØÎÙÍ. ÷ÓÅ ÐÒÅÔÅÎÚÉÉ Ë ËÏÍÉÔÅÔÕ ÐÏ ÓÔÁÎÄÁÒÔÉÚÁÃÉÉ, Á ÚÁÏÄÎÏ ËÏ ×ÓÅÍ óõâä, ÇÄÅ ÜÔÁ ÆÉÞÁ ÒÅÁÌÉÚÏ×ÁÎÁ. èÏÔÅÌÏÓØ ÂÙ ÕÚÎÁÔØ ÍÎÅÎÉÅ ÚÎÁÀÝÉÈ ÐÏ ÜÔÏÍÕ ÐÏ×ÏÄÕ (ÏÓÏÂÅÎÎÏ Õ äå É äë ËÁË ÈÏÒÏÛÉÈ ÔÅÏÒÅÔÉËÏ×). ÷ÓÅ ÓÄÅÌÁÎÏ × ÓÏÏÔ×ÅÔÓÔ×ÉÉ ÓÏ ÓÔÁÎÄÁÒÔÏÍ É ÓÏ ÚÄÒÁ×ÙÍ ÓÍÙÓÌÏÍ. äÖÏÊÎÉÔØ ÍÏÖÎÏ ÔÏÌØËÏ ÎÅÚÁ×ÉÓÉÍÙÅ ÔÁÂÌÉÃÙ. éÎÁÞÅ ÐÏÌÎÙÊ ÁÈÔÕÎÇ × ËÏÎÓÅÒ×ÁÔÏÒÉÉ. -- äÍÉÔÒÉÊ åÍÁÎÏ×
Re: ����� ��� ����� � FB2 RC1
sasha [EMAIL PROTECTED] wrote: ÎÁ ÓÁÍÏÍ ÄÅÌÅ ÎÁÄÏ ÄÖÏÊÎÉÔØ ÎÅ Ó ÁÇÒÅÇÁÔÁÍÉ, Á Ó ÐÅÒ×ÏÊ ÐÏÐÁ×ÛÅÊÓÑ ÚÁÐÉÓØÀ, ËÁË Ñ ÒÁÎØÛÅ ÓÐÒÁÛÉ×ÁÌ SELECT A.*, B.NAME FROM TABLE_A A LEFT JOIN ( SELECT PARENT_ID, MIN(NAME) FROM TABLE_B GROUP BY PARENT_ID) AS B (PARENT_ID, NAME) ON B.PARENT_ID = A.ID -- äÍÉÔÒÉÊ åÍÁÎÏ×
Re: ����� ��� ����� � FB2 RC1
sasha [EMAIL PROTECTED] wrote: îÅ ×Ó£ ÔÁË ÐÒÏÓÔÏ! õ ÍÅÎÑ ËÁË ÍÉÍÎÉÍÕÍ ÔÒÉ ÐÏÌÑ ÅÓÔØ: ÕÒÌ ÆÁÊÌÁ, ÒÁÚÍÅÒ ÆÁÊÌÁ É ÍÁÊÍ-ÔÉÐ. é ÞÅÍ ÜÔÏ ÓÌÏÖÎÅÅ? ôÒÉ ÐÏÌÑ × ON ÕÊÄÕÔ ÉÌÉ MIN ÐÏ ÔÒÅÍ ÐÏÌÑÍ ÂÕÄÅÔ - ÔÅÂÅ ×ÉÄÎÅÅ. åÓÌÉ ÎÅÔ, ÔÏ ÄÁ×ÁÊ ÒÅÁÌØÎÙÊ ×ÏÐÒÏÓ. -- äÍÉÔÒÉÊ åÍÁÎÏ×
Re: ����� ��� ����� � FB2 RC1
sasha [EMAIL PROTECTED] wrote: óÍÏÔÒÉ, ÅÓÔØ 3 ÚÁÐÉÓÉ: SELECT A.*, B.F1, B.F2, B.F3 FROM TABLE_A A LEFT JOIN ( SELECT PARENT_ID, MIN(RDB$DB_KEY) FROM TABLE_B GROUP BY PARENT_ID) AS TEMP (PARENT_ID, DB_KEY) ON TEMP.PARENT_ID = A.ID LEFT JOIN TABLE_B B ON B.RDB$DB_KEY = TEMP.DB_KEY -- äÍÉÔÒÉÊ åÍÁÎÏ×
Re: ��������� ������� ������� �� ����� � FB2 RC1?
åÓÌÉ ÉÎÄÅËÓÉÒÕÅÍÏÅ ÐÏÌÅ ÉÍÅÅÔ ÔÉÐ NUMERIC, Á ÓÒÁ×ÎÉ×ÁÅÍÙÊ Ó ÎÉÍ ÐÒÅÄÉËÁÔ - double ÉÌÉ char. ÷ ÓÌÕÞÁÅ Ó double ÉÓËÏÍÙÊ ËÌÀÞ ÏËÒÕÇÌÑÅÔÓÑ ÄÏ ÃÅÌÙÈ ÍÁÔÅÍÁÔÉÞÅÓËÉ, × ÓÌÕÞÁÅ Ó char - ×ÎÉÚ. ðÏÄÒÏÂÎÅÅ Ñ ÎÅ ÒÁÓËÁÐÙ×ÁÌ. óÐÁÓÉÂÏ ÚÁ ÐÏÄÒÏÂÎÏÅ ÏÂßÑÓÎÅÎÉÅ, ÂÕÄÕ ÔÅÐÅÒØ ÚÎÁÔØ. -- ó Õ×ÁÖÅÎÉÅÍ íÏÉÓÅÅÎËÏ äÍÉÔÒÉÊ
Re: ����� ��� ����� � FB2 RC1
Следующая команда не компиллируется с ошибкой 'Count of read-write columns does not equal count of values.': INSERT INTO UndeletableRssFeedItems SELECT GEN_ID(GEN_RSS_FEED_ITEM_ID, 1), :FEED_ID, Title, Link, Description, Author, Comments, Guid, PubDate, SourceUrl, :SOURCE_VALUE, EnclosureUrl, EnclosureLength, EnclosureType, Hash, Deprecated, Hidden FROM UndeletableRssFeedItems WHERE Id = :RSS_FEED_ITEM_ID; А эта компиллируется: INSERT INTO UndeletableRssFeedItems (Id, FeedId, Title, Link, Description, Author, Comments, Guid, PubDate, SourceUrl, SourceValue, EnclosureUrl, EnclosureLength, EnclosureType, Hash, Deprecated, Hidden) SELECT GEN_ID(GEN_RSS_FEED_ITEM_ID, 1), :FEED_ID, Title, Link, Description, Author, Comments, Guid, PubDate, SourceUrl, :SOURCE_VALUE, EnclosureUrl, EnclosureLength, EnclosureType, Hash, Deprecated, Hidden FROM UndeletableRssFeedItems WHERE Id = :RSS_FEED_ITEM_ID; Извиняюсь за offtopic, но это-ж садомазохизьм какой-то. UndeletableRssFeedItems - печатать упарисси, да еще и квотированные идентификаторы. Я, честно говоря, начал было разбираться, что-же тут написано, но ниасилил.:) Может и сервер тоже не смог ... :))) With b/r. Gleb.
Re: �� ���������� ���� ��� FB2
? îÁ×ÅÒÎÏÅ FK-ÐÏÌÅ ÓÓÙÌÁÅÔÓÑ ÎÁ PK-ÐÏÌÅ ÄÒÕÇÏÇÏ ÔÉÐÁ. ïËÁÚÁÌÓÑ ÒÁÚÎÙÊ COLLATE - WIN1251 É PXW_CYRL
Re: �� ���������� ���� ��� FB2
á ÌÏÇÅ ÓÌÅÄÕÀÝÅÅ ÏÂÎÁÒÕÖÉÌ: PC (Server) Fri Apr 21 07:59:08 2006 Database: E:\BASE.GDB internal gds software consistency check (index bucket overfilled (205), file: btr.cpp line: 3394)
Re: FB2
Alexander Kolokolzov [EMAIL PROTECTED] wrote: ÄÏ ËÕÞÉ ÞÅÍ ÏÔÌÉÞÁÀÔÓÑ Ä×Á ÁÒÈÉ×Á × http://firebird.sourceforge.net/download/snapshot_builds/win/ îÉÞÅÍ. îÁÓËÏÌØËÏ Ñ ÐÏÍÎÀ, ×ÔÏÒÏÊ - ÜÔÏ ÓÉÍÌÉÎË ÎÁ ÐÅÒ×ÙÊ. úÁÞÅÍ ÔÁË ÓÄÅÌÁÎÏ - ÎÅ ÓÐÒÁÛÉ×ÁÊ, ÄÁ×ÎÏ ÜÔÏ ÂÙÌÏ :-) -- äÍÉÔÒÉÊ åÍÁÎÏ×
Re: FB2
Alexander Kolokolzov [EMAIL PROTECTED] wrote: á ÞÔÏ, ÓÎÁÐÛÏÔÙ ÂÏÌØÛÅ ÎÅ ×ÙËÌÁÄÙ×ÁÀÔÓÑ? âÙÌÁ ÐÏÌÏÍËÁ ÓÅÒ×ÅÒÁ. îÁ ÄÎÑÈ ÓÎÁÐÛÏÔÙ ÓÎÏ×Á ÂÕÄÕÔ ÏÂÎÏ×ÌÑÔØÓÑ. -- äÍÉÔÒÉÊ åÍÁÎÏ×
Re: FB2
до кучи чем отличаются два архива в http://firebird.sourceforge.net/download/snapshot_builds/win/ (например Firebird-2.0.0.12548-0_win32.zip и Firebird-2.0.0.win32-snapshot.zip) кроме имени? Размером и датой вроде одинаковы... зачем тогда их два кладут?
Re: �������� ����� � FB2
Hello, sasha! sasha wrote: гм, чего-с? :-) какие два раза, и где тормозят? Ну как же? Сначала ж фетч полей делаем, а потом отдельно фетч блобов по полученным в первом фетче полям. VARCHAR же скромно обходится одним фетчем. Если блобов в таблице несколько, то это вобще мрак. никаких мраков не вижу. Что блобы считываются отдельно - это ПРАВИЛЬНО. Потому что нефиг их вместе с записью тягать. И читаются и пишутся они не два раза, а один. М.б. ты хотел сказать - в два приема. -- Dmitri Kuzmenko, www.ibase.ru, (495) 953-13-34
Re: FB2 beta2 и isql.exe
Это в одной тр-ции ? Не знаю. Но то, что в одном sql-файле - это точно :) но я не уверен что овчинка выделки стоит. Это точно :) Спасибо за объяснения! Коваленко Дмитрий.
Re: FB2 beta2 и isql.exe
Kovalenko Dmitry ... Привет всем. Наконец-то добрался до бинарников второй беты. Поставил супер-сервер. При генерировании базы с нуля, обнаружил что DML выражения теперь не авто-коммитятся (?) Конечно это не так. Речь о isql, надеюсь ? Проявляется это на последовательностях 1. вставка в таблицу T1 2. создание FK из T2 на T1 -- ошибка T1 in use Это в одной тр-ции ? CREATE TABLE K_A (ID INT NOT NULL PRIMARY KEY) COMMIT CREATE TABLE K_B (ID INT NOT NULL PRIMARY KEY, ID_A INT) COMMIT INSERT INTO K_A VALUES (1) ALTER TABLE K_B ADD CONSTRAINT FK_K_A FOREIGN KEY (ID_A) REFERENCES K_A (ID) COMMIT Всё ок. Но это в IBE :) В isql действительно : Statement failed, SQLCODE = -901 lock conflict on no wait transaction -unsuccessful metadata update -object K_A is in use Но это особенность isql - в режиме AUTODDL ON он DDL и DML выполняет в разных тр-циях. так что - или AUTODDL OFF с явными коммитами, или ставь коммиты между DML и DDL Вообщем, для меня ничего страшного нет. Добавил в скрипты промежуточные внутренние COMMIT-ы и обрел счастье. Однако раньше (на FB1.5 - точно) все создавалось и без них. Там для создания FK требовалась эксклюзивная блокировка БД (и ты её имел в одной сессии isql). А сейчас требуется protected_write блокировка на обе таблицы, и её нельзя получить, т.к. DML тр-ция уже имеет shared_write блокировку на K_A. В принципе, для того чтобы поддержать такое поведение isql, можно сначала пытаться блокировать БД, а только потом (в случае неудачи) таблицы, но я не уверен что овчинка выделки стоит. И еще вопрос. Ночные сборки FB2 с www.firebirdsql.org ни фига не качаются - постоянный обрыв и скорость никакая. Где их еще можно взять? http://firebird.sourceforge.net/download/snapshot_builds/win/Firebird-2.0.0.win32-snapshot.zip Эта ссылка всегда работала нормально -- Хорсун Влад
Re: � ��� ����� ������� FB2 Beta 2?
ëÁË ÏÎ ÂÕÄÅÔ ×ÙÌÏÖÅÎ, ÔÅÂÅ ÓËÁÖÕÔ :-) ñ É ÄÕÍÁÌ ÉÍÅÎÎÏ ÜÔÏ É ÓËÁÚÁÌÉ ÎÁ http://www.firebirdsql.org/index.php?op=filesid=fb2_beta02 ëÉÎÕÌÓÑ ÓÍÏÔÒÅÔØ, Á ÓÓÙÌËÉ ÎÁ ÆÁÊÌÙ ÎÉËÕÄÁ ÎÅ ÐÒÉ×ÏÄÑÔ.
Re: fb2 incompatibilities
Dmitri Kuzmenko пишет: Hello, All! (а скорее FB2 developers) наткнулся на It's now forbidden to try to update the same column more than once in the same update statement: UPDATE T SET A = x, B = y, A = z соответственно вопрос - а как же быть с этим, как его, с тем что у нас значения столбцов меняются сразу, а не потом? то есть, нельзя написать update t set a=b, b=a чтобы обменять местами значения столбцов. приходится ж писать для числовых нечто вроде обмена через арифметические действия, я не помню как там точно, но там нечто вроде update t set a=b-a, b=..., a=... то есть без 2-кратного присвоения никак. Тремя апдейтами в одной снапшот транзакции
Re: fb2 incompatibilities
Dmitry Yemanov wrote: update t set a=b-a, b=..., a=... то есть без 2-кратного присвоения никак. Значит, неповезло оным обменяльщикам. Вот уж любители правильных серверов теперь поглумятся... :(
Re: fb2 incompatibilities
Fynda пишет: Вот уж любители правильных серверов теперь поглумятся... :( Почему поглумятся и при чем тут правильные сервера? Как раз здесь нет никакой incompatibility. Если глянуть ANSI SQL (не помню какой), описание update, то станет ясно, что такое двойное присвоение неоднозначно. Проверил навскидку в ASA - тоже ругается на подобный UPDATE
Re: fb2 incompatibilities
Hello, Alexander! Alexander Goldun wrote: Вот уж любители правильных серверов теперь поглумятся... :( Почему поглумятся и при чем тут правильные сервера? Как раз здесь нет никакой incompatibility. Если глянуть ANSI SQL (не помню какой), описание update, то станет ясно, что такое двойное присвоение неоднозначно. Проверил навскидку в ASA - тоже ругается на подобный UPDATE так это, у нас же переприсвоение было трюком по обходу проблемы с немедленным изменением содержимого столбцов при Update. Если ЭТО не исправлено, в сторону совместимости с правильными серверами и стандартом, то получаем ситуацию, что ликвидорован не bug или wrong behavior, а workaround. -- Dmitri Kuzmenko, www.ibase.ru, (495) 953-13-34
Re: ����� �� ���� ������ � ������� FB2?
ïÂÎÁÒÕÖÉÌ ÎÁ ÐÏÓÌÅÄÎÅÍ ÂÉÌÄÅ ÔÁËÕÀ ÐÒÏÂÌÅÍÕ, ÅÓÔØ ÚÁÐÒÏÓ SELECT SUM(P.PAY_SUMMA) FROM PAYS P WHERE ( P.ABONENT_ID = :ABONENT_ID) AND ( P.PAY_DATE :STARTDATE) AND ( P.PAY_DATE = :SALDO_DATE) × ÔÁÂÌÉÃÅ ÅÓÔØ ÚÁÐÉÓÉ Ó ÄÁÔÁÍÉ PAY_DATE '28.12.05','29.12.05','28.12.05' ÔÁË ×ÏÔ ÐÒÉ ÚÎÁÞÅÎÉÉ ÐÁÒÁÍÅÔÒÁ STARTDATE='01.01.2006' ÏÎÉ × ÒÅÚÕÌØÔÁÔ ÎÅ ÐÏÐÁÄÁÀÔ. ðÒÉ ÉÚÍÅÎÅÎÉÉ ÕÓÌÏ×ÉÑ Ó , ÎÁ = ×ÓÅ ÒÁÂÏÔÁÅÔ ÐÒÁ×ÉÌØÎÏ. ÔÁË, ÐÒÏÓÔÏ ÓÌÕÞÁÊÎÏ ÎÁÒ×ÁÌÓÑ. íÁÔÁÛÉÎ á.÷.
Re: ����� ����� ������� ����� FB2?
ðÒÏÐÉÛÉ ÒÕËÁÍÉ ÏÐÔÉÍÁÌØÎÙÅ ÐÌÁÎÙ É ÂÕÄÅÔ ÔÅÂÅ 1 ÍÉÎÕÔÁ ÎÁ ÔÅËÕÝÉÈ ÓÅÒ×ÅÒÁÈ. äÅÓÔ×ÉÔÅÌØÎÏ ÐÏÍÏÇÁÅÔ, ÐÒÏÓÔÏ ÎÅ ÏÞÅÎØ ÓÉÌÅÎ × ÎÁÐÉÓÁÎÉÉ ÐÌÁÎÏ×, ÓÒÁ×ÎÉÌ ÐÌÁÎÙ FB2 É ÓÄÅÌÁÌ ËÁË ÏÎ Á×ÔÏÍÁÔÏÍ ÐÒÅÄÌÏÖÉÌ, ÐÏËÁ ÕÌÕÞÛÉÌ ×ÒÅÍÑ ÄÏ 3È ÍÉÎÕÔ, ×ÉÄÉÍÏ ÍÏÖÎÏ É ÂÏÌØÛÅ. óÐÁÓÉÂÏ ÚÁ ÓÏ×ÅÔ. íÁÔÁÛÉÎ á.÷.
Re: ����� �� ���� ������ � ������� FB2?
ïÂÎÁÒÕÖÉÌ ÎÁ ÐÏÓÌÅÄÎÅÍ ÂÉÌÄÅ ÔÁËÕÀ ÐÒÏÂÌÅÍÕ, îÅ ÚÎÁÀ ÔÁËÏÇÏ. îÅÕÖÅÌÉ ÎÅÌØÚÑ ÎÏÍÅÒ ÓËÁÚÁÔØ ? Firebird-2.0.0.12236 ÅÓÔØ ÚÁÐÒÏÓ SELECT SUM(P.PAY_SUMMA) FROM PAYS P WHERE ( P.ABONENT_ID = :ABONENT_ID) AND ( P.PAY_DATE :STARTDATE) AND ( P.PAY_DATE = :SALDO_DATE) × ÔÁÂÌÉÃÅ ÅÓÔØ ÚÁÐÉÓÉ Ó ÄÁÔÁÍÉ PAY_DATE '28.12.05','29.12.05','28.12.05' ÔÁË ×ÏÔ ÐÒÉ ÚÎÁÞÅÎÉÉ ÐÁÒÁÍÅÔÒÁ STARTDATE='01.01.2006' ÏÎÉ × ÒÅÚÕÌØÔÁÔ ÎÅ ÐÏÐÁÄÁÀÔ. ðÒÉ ÉÚÍÅÎÅÎÉÉ ÕÓÌÏ×ÉÑ Ó , ÎÁ = ×ÓÅ ÒÁÂÏÔÁÅÔ ÐÒÁ×ÉÌØÎÏ. ÔÁË, ÐÒÏÓÔÏ ÓÌÕÞÁÊÎÏ ÎÁÒ×ÁÌÓÑ. äÁÊ ÐÏÌÎÙÊ DDL ÔÁÂÌÉÃÙ Ó ÉÎÄÅËÓÁÍÉ, ÞÁÓÔØ ÄÁÎÎÙÈ É ÐÌÁÎÙ ÄÌÑ É = ÐÏÐÒÏÂÕÀ ×ÙÒÅÚÁÔØ ËÕÓÏË × ÏÔÄÅÌØÎÕÀ ÂÁÚÕ, ÐÏÔÏÍ ×ÙÌÏÖÕ. É ÅÝÅ ÎÅÐÒÁ×ÉÌØÎÏ ÒÁÂÏÔÁÅÔ ÎÅ ÔÏÌØËÏ SUM, ÎÏ É ÐÒÏÓÔÏ ×ÙÂÏÒËÁ. íÁÔÁÛÉÎ á.÷.