воскресенье, 24 марта 2013 г.

Lazarus. Подключение к Firebird DB

Для работы с Firebird DB в IDE Lazarus есть уже готовые компоненты. Используя их, можно успешно проводить sql-транзакции, отображать результат на стандартных визуальных компонентах.

Компоненты

 

SQLdb

Для начала, нужно добавить на форму компоненты, работающие непосредственно с Firebird DB.
Для этого откроем вкладку компонент "SQLdb"

 

Data Access

Затем, перейдем на вкладку "Data Access" и выберем компонент TDatasource
Этот компонент поможет автоматически связывать данные, полученные из определенного датасета (в данном случае - от TSQLQuery) и визуальные компоненты, на которых эти данные нужно отобразить.

 

Data Controls

В довершении, поместим на форму компонент для визуального отображения данных. Перейдем на вкладку "Data Controls" и выберем, например, TBGrid

Установка свойств компонентов

Для каждого компонента производим минимальную установку свойств, необходимую для их работоспособности.

TIBConnection

  • DatabaseName - путь к существующей базе данных
  • Password - пароль к db
  • Transaction - ссылка объект класса TSQLTransaction (указываем тот, что добавили на форму)
  • UserName - имя пользователя db
  • CharSet - кодировка db
После того, как вышеперечисленные свойства установлены, пробуем установить свойство Connected в true. Если все было указано верно, то ошибки не произойдет и свойство применится. В противном случае свойство останется в false - в этом случае смотрите, какие ошибки выдает IDE, и пробуйте их исправить.

TSQLQuery

  • Database - ссылка на объект класса TIBConnection (указываем тот, что добавили на форму)
  • SQL - список запросов, выполняемых по умолчанию. Добавьте любой простой запрос на выборку, типа SELECT * FROM table_name
  • Transaction - ссылка объект класса TSQLTransaction (указываем тот, что добавили на форму)
После установки вышеперечисленных свойств, пробуем установить свойство Active в true. Если все было указано верно, то ошибки не произойдет и свойство применится. В противном случае свойство останется в false - в этом случае смотрите, какие ошибки выдает IDE, и пробуйте их исправить.

TSQLTransaction

  •  Database - ссылка на объект класса TIBConnection (указываем тот, что добавили на форму)
  • Active - устанавливаем в true

TDatasource

  • DataSet - ссылка объект класса TSQLQuery (указываем тот, что добавили на форму)

 

TDBGrid

  •  DataSource - ссылка на объект класса TDatasource (указываем тот, что добавили на форму)

Если все сделано верно, то в компоненте TDBGrid будет отображен результат выборки, указанной по умолчанию для TSQLQuery компонента.