Этот хренов ZeosDBO :-(

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Этот хренов ZeosDBO :-(

Сообщение А.Н. » 30.05.2010 20:48:50

Использую ZeosDBO-666.

Начал использовать, поскольку, во-первых, на Delphi он был, во-вторых: mysql-5.1.
И, к сожалению, в ближайшее время заменить его на нормальные компоненты не представляется возможным.
Возникло несколько вопросов:
1.) Не работают lookup поля в запросах.
При отключенном LookupCache - нет списка.
При включенном, - почему-то показывает совсем не ту запись, которая нужна. Вообще, в списке одна запись.
Для ZTable всё работает нормально. :(
Что с этим делать?
2.) При возврате результата из хранимой процедуры вылезает ошибка.
CLIENT_MULTI_STATEMENTS=true
CLIENT_MULTI_RESULTS=true
Вылезает какая-то ошибка с 'sync бла-бла-бла'... Я нашёл в сети решение: исправляется "драйвер" (в смысле zeos'овский).
Может, есть менее радикальные способы?
Сейчас я делаю Reconnect после каждого вызова процедуры...
Может, есть более хорошие способы?
3.) Ну, то, что ZStoredProc не работает, - это понятно.
В 7-alpha так и не исправили?

P.S.:
Мда... Печально. Пользовал бы TSQLQuery, число компонентов в модуле данных сократилось бы раза в два. :(

Добавлено спустя 2 часа 46 минут 25 секунд:
Да, ещё, периодически, не работают вызовы процедур через запросы с параметрами.
Тоже непонятно...
И с транзакциями какой-то маразм.
Процедура начинает транзакцию. Вызываю процедуру, используя ZReadOnlyQuery.
Ничего не происходит. Не изменяется таблица.
В клиенте mysql, вызываю ту же процедуру. Он долго ждёт и выдаёт, в итоге:
"mysql> call BlankReserve(0, '000', '13');;
ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction"

Добавлено спустя 24 секунды:
Запарил этот zeos и lazarus. :(
А.Н.
постоялец
 
Сообщения: 230
Зарегистрирован: 13.03.2010 12:23:58

Re: Этот хренов ZeosDBO :-(

Сообщение Inferno » 31.05.2010 06:36:07

Не надо так категорично. если глючат Zeos не значит что лазарус г...о. Тоже с ними "напарился", например: для оракла не читал блобы больше N кБайт, локатор на блобы один и тот же на всё записи в наборе данных. Ну а привязка в 7.0 переменных вроде бы работает как надо. Флаг вам в руки мне пришлось самому переписать пару процедур и оправить разработчику из Бельгии для внесения изменений. Да и 64бита не поддерживали в версии 6.6 если руками не допилить так называемыми "users patches" взятыми с оф.сайта.
Но ведь бесплатно же :!:
Аватара пользователя
Inferno
новенький
 
Сообщения: 78
Зарегистрирован: 20.03.2009 14:40:20
Откуда: Тюмень

Re: Этот хренов ZeosDBO :-(

Сообщение Light13 » 31.05.2010 06:42:21

я чет не пойму, вам выплакаться что ль надо?
Перкрасно работают транзакции с мускулом пятым.
лукапы тож пашут как проклятые.
с хранимками не работал - утверждать не могу. :)

выше изложенное проверено как под виндой, так и под линукс убунту.

З.Ы.
Win XP 32b, Win wista HP, Ubuntu 10.04 i386, Ubuntu 10.04 amd64/
под убунту тока пришлось делать симлинк на либу мускула
Аватара пользователя
Light13
постоялец
 
Сообщения: 127
Зарегистрирован: 17.07.2009 07:50:10
Откуда: Челябинск

Re: Этот хренов ZeosDBO :-(

Сообщение А.Н. » 31.05.2010 11:06:42

Не надо так категорично. если глючат Zeos не значит что лазарус г...о.

Ну то, что лазарус говно я не говорил. Но, он тоже, порядком глючит, иногда.
Хотя, конечно, понятно, что версия ещё 0.9, так что, с этим возможно мириться.

Тоже с ними "напарился", например: для оракла не читал блобы больше N кБайт,
локатор на блобы один и тот же на всё записи в наборе данных.
Ну а привязка в 7.0 переменных вроде бы работает как надо.
Флаг вам в руки мне пришлось самому переписать пару процедур и оправить разработчику
из Бельгии для внесения изменений.

Мда... Но у меня нет ни времени, ни желания копаться в их библиотеке.
Особенно большой минус - это то, что, придётся каждый раз править код библиотеки,
при обновлении Lazarus, например.

Да и 64бита не поддерживали в версии 6.6 если руками не допилить так называемыми
"users patches" взятыми с оф.сайта.

Про user patches не слышал. Буду смотреть. :) Хотя бы временно, может, поможет.

Но ведь бесплатно же :!:

Компонента TSQLQuery тоже бесплатна. Только там ещё InsertSQL, UpdateSQL...
Минус два компонента (не, конечно, возможно сделать процедуры в модуле данных,
которые будут менять ZQuery.SQL, в зависимости от того Insert это или Update,
но как-то это).
Плюс, в TSQLQuery, изменения в БД не вносятся, пока явно это не подтвердишь.
Я с ним ещё ни разу не работал (на лазарусе-то первую программу пишу и сразу с zeos).
Надеюсь, в TSQLQuery меньше "волшебных моментов", плюс..?

Но, увы, с mysql 5.1 не работает. :(

Light13 писал(а):я чет не пойму, вам выплакаться что ль надо?

Ну, в общем-то, мне надо узнать что теперь делать и кто виноват с этим всем?
Я уже месяца четыре парюсь со всем этим и с программкой. Глючит то и глючит сё. Осточертело.
Уже нужно было сдать. И тут замаячила радужная перспектива всё переделать. Я слегка расстроен. :-\

И, ещё меня интересует, во-первых, нет ли какой альтернативы?
Во-вторых, хотелось бы использовать компоненту, которая вместе с Lazarus.
Сложно будет перейти?

лукапы тож пашут как проклятые.

Лукапы в ZQuery, когда результирующее поле, также, берётся из ZQuery?
А версия zeos какая?

Перкрасно работают транзакции с мускулом пятым.
...
с хранимками не работал - утверждать не могу. :)

Только у меня транзакция открывается в процедуре. Из клиента mysql всё работает.
В своей программке всё работало. Я чего-то чуть-чуть поменял.
И, теперь, ни хрена не работает. Zeos требует каких-то танцев с бубном.
А.Н.
постоялец
 
Сообщения: 230
Зарегистрирован: 13.03.2010 12:23:58

Re: Этот хренов ZeosDBO :-(

Сообщение Vadim » 31.05.2010 11:28:33

А.Н.
Попробуйте SQLDb, которые идут в составе Лазарус. На сайте писали, что этот компонент подправили и он должен теперь с MySQL 5.1 уже работать. Сам не проверял, т.к. использую в своих проектах тоже ZEOS (проблемы у меня были тоже с версией 5.1, плюс транзакции не работали :) , а в ZEOS всё заработало с полоборота).
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Этот хренов ZeosDBO :-(

Сообщение Light13 » 31.05.2010 11:41:12

тока query и использую
А версия zeos какая?

6.6.5 stable
Аватара пользователя
Light13
постоялец
 
Сообщения: 127
Зарегистрирован: 17.07.2009 07:50:10
Откуда: Челябинск

Re: Этот хренов ZeosDBO :-(

Сообщение Little_Roo » 01.06.2010 12:17:19

Light13 писал(а):тока query и использую
А версия zeos какая?

6.6.5 stable

У меня на этой версии проект компилился по 10-12 минут :(
Переполз на 7 из svn - полет нормальный, правда база на firebird
Аватара пользователя
Little_Roo
энтузиаст
 
Сообщения: 639
Зарегистрирован: 27.02.2009 19:56:36
Откуда: Санкт-Петербург

Re: Этот хренов ZeosDBO :-(

Сообщение А.Н. » 02.06.2010 17:19:10

Vadim писал(а):Попробуйте SQLDb, которые идут в составе Лазарус. На сайте писали, что этот компонент подправили и он должен теперь с MySQL 5.1 уже работать.

TSQLQuery, вы имеете ввиду?
Хм... Перейти на на него будет сложно? У меня где-то штук 60 ZQuery и 30 DataSource. :(
И я нигде не видел разговоров про то, что он работает с 5.1. В смысле, не видел TMYSQLConnection такого...

Сам не проверял, т.к. использую в своих проектах тоже ZEOS (проблемы у меня были тоже с версией 5.1, плюс транзакции не работали :) , а в ZEOS всё заработало с полоборота).

Ээээ, не работали в SQLDb?

Light13 писал(а):6.6.5 stable

Хм... Странно. По-идее, в 6.6.6 должно работать? Чего, тогда, я делаю не так?

Добавлено спустя 1 минуту 29 секунд:
Little_Roo писал(а):У меня на этой версии проект компилился по 10-12 минут :(
Переполз на 7 из svn - полет нормальный, правда база на firebird

Хм... Интересно, как насчёт MySQL, Zeos 7-я?
А.Н.
постоялец
 
Сообщения: 230
Зарегистрирован: 13.03.2010 12:23:58

Re: Этот хренов ZeosDBO :-(

Сообщение Light13 » 03.06.2010 11:53:44

А.Н. писал(а):MySQL, Zeos 7-я?

ставил только под линукс Ubuntu на текущую стабильную версию лазаря 0.9.28 - вроде работало :)
Аватара пользователя
Light13
постоялец
 
Сообщения: 127
Зарегистрирован: 17.07.2009 07:50:10
Откуда: Челябинск

Re: Этот хренов ZeosDBO :-(

Сообщение А.Н. » 07.06.2010 09:50:32

Эврика. Я понял в чём была проблема с lookup полями.
Поле в запросе, откуда берётся значение (группа клиента, в данном случае) называлось CLIENT_TYPE_GROUP.
Lookup-поле в запросе, куда оно подставлялось, называлось также.
Я изменил название lookup поля на CT_TYPE_GROUP и всё заработало.

Хм... Вот интересно, это так и должно быть и это моя ошибка или это их ошибка?

Добавлено спустя 3 минуты 13 секунд:
Буду добавлять "FL_" в начало всех лукап полей.

Добавлено спустя 7 минут 6 секунд:
Что ещё странно: lookup-поля пришлось удалять и создавать заново. Иначе, не работает. Блин, 7-я глючит также. Такое ощущение, что они только картинки поменяли. :(

Добавлено спустя 3 минуты 17 секунд:
Один хрен: не работает. Со включенным LookupCache список состоит из одного элемента. С выключенным нет списка. :(
У вас нет необходимых прав для просмотра вложений в этом сообщении.
А.Н.
постоялец
 
Сообщения: 230
Зарегистрирован: 13.03.2010 12:23:58

Re: Этот хренов ZeosDBO :-(

Сообщение WAYFARER » 08.06.2010 11:22:42

А.Н. писал(а):Хм... Вот интересно, это так и должно быть и это моя ошибка или это их ошибка?

по идее так не должно быть, но рекомендую подумать о "правильном" именовании таблиц и полей - самому удобнее будет.
А.Н. писал(а):Один хрен: не работает. Со включенным LookupCache список состоит из одного элемента. С выключенным нет списка.

Думается мне, что это проблема не Zeos, т.к. у меня с того же дистрибутива Zeos в Delphi проблем не наблюдается.
Аватара пользователя
WAYFARER
энтузиаст
 
Сообщения: 537
Зарегистрирован: 09.10.2009 00:00:04
Откуда: г. Курган

Re: Этот хренов ZeosDBO :-(

Сообщение А.Н. » 08.06.2010 13:44:52

Хм... Ну тогда, либо это лазарус, либо моя ошибка. Если моя, то где я мог напортачить?
Или, может, это проблема zeos именно в лазарус. Или именно с данными настройками (но в этом я сомневаюсь).
В любом случае, zeos так глючит, что использовать его, похоже, смысла нет.
А.Н.
постоялец
 
Сообщения: 230
Зарегистрирован: 13.03.2010 12:23:58

Re: Этот хренов ZeosDBO :-(

Сообщение dunin » 08.06.2010 14:07:49

А.Н., забей. Тоже ковырялся с лукап полями и так и эдак. И через SQLdb и через UIB. И стандартными компонентами и RX - не работают лукап поля в Лазарусе. ИМХО.

А.Н. писал(а):У меня где-то штук 60 ZQuery и 30 DataSource. :(

А зачем так много? :shock:
Аватара пользователя
dunin
энтузиаст
 
Сообщения: 634
Зарегистрирован: 02.05.2007 13:18:11
Откуда: Тољя††и

Re: Этот хренов ZeosDBO :-(

Сообщение А.Н. » 08.06.2010 23:18:32

А.Н., забей. Тоже ковырялся с лукап полями и так и эдак. И через SQLdb и через UIB. И стандартными компонентами и RX - не работают лукап поля в Лазарусе. ИМХО.

Я не могу на это забить. Ведь, иначе, будут ID вместо осмысленных названий.
И как мне выбирать, например, группу клиента?
Что такое UIB?

Кстати, у кого-то работает. Странно...

А зачем так много?

Свои на каждый справочник, если его требуется отображать или редактировать.
Три штуки для поиска. Три штуки для выборки. На каждую сущность по одному.
Плюс по три на каждую сущность: добавление, изменение, удаление.
По два для некоторых коэффициентов.
Плюс служебные.
А.Н.
постоялец
 
Сообщения: 230
Зарегистрирован: 13.03.2010 12:23:58

Re: Этот хренов ZeosDBO :-(

Сообщение Light13 » 09.06.2010 09:15:44

А.Н. писал(а):будут ID вместо осмысленных названий

может имеет смысл уделить большее внимание SQL запросам, пусть это делает сервер
Аватара пользователя
Light13
постоялец
 
Сообщения: 127
Зарегистрирован: 17.07.2009 07:50:10
Откуда: Челябинск

След.

Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot] и гости: 31

Рейтинг@Mail.ru