Форум: "Базы";
Текущий архив: 2006.05.21;
Скачать: [xml.tar.bz2];
ВнизОшибка: Size of optimizer block exceeded Найти похожие ветки
← →
sanich © (2006-03-29 11:16) [0]Мистика какая-то. Избавился от одной ошибки - появилась другая. Во время работы приложения, когда исполняется DbTable.ApplyUpdates иногда начала появляться сообщение:
Возникла ошибка:
"Unknow user name or password".
Size of optimizer block exceeded.
← →
Плохиш © (2006-03-29 11:29) [1]
> sanich © (29.03.06 11:16)
> Мистика какая-то.
Ты форумом ошибся. Тебе надо на форум магов и волшебников.
← →
sanich © (2006-03-29 11:53) [2]Очень смешно :) Но мне от этого не легче!
← →
sanich © (2006-03-29 13:50) [3]Что никто не знает???!!!
← →
Johnmen © (2006-03-29 14:20) [4]Чего не знает?
Какая у тебя версия сервера? Какие компоненты доступа? Какой вообще код?
Конечно никто не знает. Ну, кроме тебя....
← →
sanich © (2006-03-29 14:30) [5]Сервер Firebird 1.0. Компоненты доступа TDatabase, TTable, TDataSource ну и набор компонент из закладки DataControls: TDbGridEh, TDBEditEh.
Код:
dmData.tbCalc.ApplyUpdates;
← →
sanich © (2006-03-29 14:36) [6]Именно на этом месте появляется ошибка.
← →
Johnmen © (2006-03-29 14:39) [7]БД в каком диалекте?
← →
sanich © (2006-03-29 14:40) [8]SQL Dialect 1
← →
Johnmen © (2006-03-29 14:54) [9]Приведи полный текст ошибки, дословно. И класс ошибки...
Сервер БД и приложение на одной машинке?
← →
sanich © (2006-03-29 15:08) [10]Сервер БД и приложение - на одной машине.
Полный текст ошибки:
Внимание! Непредусмотренная ошибка. Обратитесь к разработчику.
Ти ошибки: Unknow user or password.
Size of optimizer block exceeded.
Класс ошибки:
EDBEngineError
← →
Johnmen © (2006-03-29 15:21) [11]Очевидно, это глюк БДЕ.
Приведи структуру таблицы, ключи и индексы.
Но я рекомендую отказаться от БДЕ в ползьу компонент прямого доступа.
И сервер посвежее поставить...
← →
sanich © (2006-03-29 15:29) [12]Может проблема в размере таблицы - больше 250 записей.
Так что не знаю, приводить всю структуру или нет...
← →
Sergey13 © (2006-03-29 15:37) [13]2 [12] sanich © (29.03.06 15:29)
Может проблема в TTable? С квериком не пробовал?
База нормально бекапится/ресторится?
← →
sanich © (2006-03-29 15:40) [14]Пробовал. Базу бекапил/востанавливал - результат нулевой.
← →
sanich © (2006-03-29 16:21) [15]Блин, БДЕ - дерьмо!
Заменил даже на IBE - и то работает.
Жаль что до меня программист основную часть программ сделал на БДЕ.
← →
Desdechado © (2006-03-29 19:34) [16]БДЕ тут вряд ли при делах. Я на нем делал суровые проекты с использованием FB1.0x, все работало. Нужно просто не ставить его раком.
250 записей - смех. Пара миллионов в каждой из 100 таблиц, это уже веселее.
← →
sniknik © (2006-03-29 21:11) [17]> Size of optimizer block exceeded.
This error occurs when the WHERE clause of an UPDATE or SELECT has greater than 256 ANDs or ORs.
This error has been reported to occur in conjunction with the error unknown username or password. This error is not related to the problem.
A common cause for having an UPDATE statement that includes every field in a table occurs when using a TTable or TQuery with Delphi or C++ Builder and the UpdateMode property is set to UpWhereAll. Changing the UpdateMode to upWhereChanged or upWhereKeyOnly solves the problem for most applications. If you need further customizations, a TUpdateSQL component can be used in conjunction with your TQuery or TTable to further control which fields are used in the WHERE clause of your UPDATE statement.
ApplyUpdates составляет запрос на обновление и включает в него при указаном параметре все поля в условие. у тебя что в таблице больше 256-и полей?.... и после такого "гнать" на BDE? нехорошо...
просто молча смени старушку. без наездов, и "ненаезжаем" будеш.
для временного решения, и ускорения (но менять все одно надо) поставить обновление по ключу.
← →
sanich © (2006-03-30 09:56) [18]
> 250 записей - смех.
Ой, ошибся- полей!
← →
sanich © (2006-03-30 09:57) [19]
> таблице больше 256-и полей
Все понял - я так и думал, что проблема в количестве полей.
← →
Sergey13 © (2006-03-30 09:58) [20]2[18] sanich © (30.03.06 09:56)
>> 250 записей - смех.
>Ой, ошибся- полей!
Я тащусь!!! 8-)
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2006.05.21;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.014 c