Lazarus + Firebird

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

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

Ответить
Lamer
незнакомец
Сообщения: 1
Зарегистрирован: 28.03.2007 14:43:03

Lazarus + Firebird

Сообщение Lamer »

Подскажите как средствами Lazarus подключиться к базе Firebird, покажите какой нибудь маленький пример, заранее спасибо. :?
Аватара пользователя
Attid
долгожитель
Сообщения: 2589
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E
Контактная информация:

Сообщение Attid »

пользуюсь вот этими компонентами с ними идет пример

http://www.progdigy.com/modules.php?name=UIB
m_guest
постоялец
Сообщения: 193
Зарегистрирован: 14.08.2005 15:10:21

Сообщение m_guest »

В качестве Dataset'a лучше используйте вот эти компоненты, а не родные от UIB:
http://alexs75.narod.ru/fpc/fbdataset/index.htm
wellx
новенький
Сообщения: 67
Зарегистрирован: 06.05.2005 14:01:07

Сообщение wellx »

Аватара пользователя
Attid
долгожитель
Сообщения: 2589
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E
Контактная информация:

Сообщение Attid »

wellx
пользуешься ? хочется услышать в чем отличая, положительные , отрицательные стороны . .

вот еще есть
http://pdo.sourceforge.net/index.shtml
wellx
новенький
Сообщения: 67
Зарегистрирован: 06.05.2005 14:01:07

Сообщение wellx »

Attid писал(а):wellx
пользуешься ? хочется услышать в чем отличая, положительные , отрицательные стороны . .

вот еще есть
http://pdo.sourceforge.net/index.shtml


Нет, все руки не доходят попробовать...
ab60
незнакомец
Сообщения: 7
Зарегистрирован: 26.10.2007 11:00:58

Сообщение ab60 »

прошелся по вариантам: штатный IBConnection+SQLQuery, потом IBDataBase+IBQuery, UIB, FBLib (ууфф...). везде успешно подключался к firebird 2.0, передавал и получал параметры из процедуры.

оч хорошо, но дальше бы надо поработать с датасетами в гриде... а датасеты необновляемые все, а то и вовсе однонаправленные. я согласен помучиться, если это плата за эффективность (траффик, память и т.п.), но все же имитировать непосредственный апдейт с минимальным щелканием кнопок хотелось бы. или было бы еще что-то вроде DatasetProvider + ClientDataset... вот PDO вроде все позволяет и выглядит солидно проработанным, но еще не пробовал.

короче, не поделится ли кто свежим опытом в этом деле, какие компоненты выбрать, да еще и примерчики где хапнуть?

кстати, датасет от alexs75 для UIB (m_guest здесь подсказал) у меня не компилится:
...fbcustomdataset.pas(3301,25) Error: identifier idents no member "GetFieldData"
Аватара пользователя
alexs
долгожитель
Сообщения: 4066
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

ab60 писал(а):..fbcustomdataset.pas(3301,25) Error: identifier idents no member "GetFieldData"

Скорее всего старый FPC
ab60
незнакомец
Сообщения: 7
Зарегистрирован: 26.10.2007 11:00:58

Сообщение ab60 »

да, поставил фпс 2.2.0, дело пошло!

правда, бедный лазарь даже иконку свою потерял, и пара пакетов отвалилась, ну ничего, исправим.
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

ab60
Я пользуюсь компонентами ZEOS (http://sourceforge.net/projects/zeoslib). Есть некоторые недоработки, но работает именно так как Вы хотите, т.е. можно править данные прямо в сетке (если Вы, конечно, написали редактируемый запрос. Если же нет, то там есть, как и в Дельфи, спецкомпоненты для обновления нередактируемых запросов, т.е. можно такой тоже в сетке править).
ab60
незнакомец
Сообщения: 7
Зарегистрирован: 26.10.2007 11:00:58

Сообщение ab60 »

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

пробую UIB + FBDataset, пока все получается.
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

ab60
Хмм... Возможно BDE и критиковали, но, насколько мне помнится, транзакций там вообще нет. :)
ZEOS сделан по образцу ADO, только не на интерфейсах, а функциях собственной разработки. В ADO транзакция тоже одна на соединение.
Роман1971
новенький
Сообщения: 69
Зарегистрирован: 30.05.2007 09:14:53

Сообщение Роман1971 »

Vadim писал(а):ab60
Хмм... Возможно BDE и критиковали, но, насколько мне помнится, транзакций там вообще нет. :)

Вы не правы, транзакции там есть всегда, просто их не слышно и не видно... :)
Когда любой DataSet переходил в состояние Active:=true, то ему в соответствие ставился объект Session по своим функциям весьма аналогичный Transaction(в свою очередь, он открывал активную транзакцию на сервере FireBird). Если пользователю не нужно было вмешиваться в этот процесс, то свойство Session рекомендовалось устанавливать в сосотояние Default. Поэтому Transaction формально вроде как и нет, но на сервере он всё равно появляется... :)
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

Роман1971
Да, действительно, вспомнил я про Session по умолчанию. Там в палитре ещё был специальный компонент TSession. :)
oksana
незнакомец
Сообщения: 6
Зарегистрирован: 17.03.2008 10:58:15

Сообщение oksana »

Перешла на линукс -установила Ubuntu, выбрала Lazarus - v0.9.24-beta, аналог Delphi . Rxfpc -инсталлировался отлично, а вот компоненты для работы с бд, предложенные в данной теме - не устанавливаются - Лазарус просто перестает загружаться.
Помогите, пожалуйста.
Последний раз редактировалось oksana 17.03.2008 21:00:06, всего редактировалось 1 раз.
Ответить