В данной статье будет рассказано о установке набора компонентов для доступа к различным базам данных - ZeosLib.
ZeosLib – проект с открытым исходным кодом, поддерживающий несколько систем управления базами данных для Delphi, FreePascal, Kylix и BCBuilder, на данный момент с его помощью можно работать со слудующими СУБД
- MySQL
- PostgreSQL
- Interbase
- Firebird
- MS SQL
- Sybase
- Oracle
- SQLite
ZeosLib использует родные библиотеки СУБД, но может использовать и свои, модифицированные библиотеки.
Для установки его в Lazarus, потребуется скачать последнюю версию с сервера проекта, там есть несколько версий , нам понадобиться последняя стабильная (stable).
Скачивать тут, последняя стабильная тут. Затем распаковываем скачанный архив. Для удобства можно распаковать его сюда "%каталог Lazarus%\components".
Затем открываем сам Lazarus, и выбираем в меню Пакет - Открыть файл пакета. Переходим в каталог куда установлена ZeosLib и выбираем пакет zcomponent.lpk
Открываем выбранный пакет. В появившемся окне нажимаем Компилировать, после окончания процесса компиляции нажимаем Использовать - Установить. В появившемся окне выбора пакетов нажимаем Ок.
Затем появится окно с предложением пересобрать среду Lazarus, нажимаем Да.
Запускается процесс компилирования. После окончания процесса Lazarus перезапуститься и на палитре компонентов появиться вкладка Zeos Access, на которой находятся компоненты для доступа к данным.
На данной вкладке содержаться следующие компоненты
![]() |
TZConnection | Компонент для подключения к СУБД |
![]() |
TZReadOnlyQuery | Компонент предназначенный для выполнения SQL запросов и обработки данных в режиме "только для чтение" |
![]() |
TZQuery | Компонент для выполнения запросов SQL и модификации данных как в обычном так и кэширующем режиме |
![]() |
TZTable | Компонент для работы с данными в пределах одной таблицы, остался со старых времен когда данные были в dbf, paradox и прочих файлах. |
![]() |
TZUpdateSQL | Компонент позволяющий явно определять SQL операторы Insert/Update/Delete для модификации набора данных |
![]() |
TZConnectionGroup | Компонент для подключения к СУБД, с возможностью группировки |
![]() |
TZGroupedConnection | Компонент для группировки соединений TZConnectionGroup |
![]() |
TZStoredProc | Компонент для работы с хранимыми процедурами в различных СУБД |
![]() |
TZSQLMetadata | Компонент для получения данных о системных компонентах СУБД, таких как триггеры, таблицы, процедуры, пользователи и прочее. |
![]() |
TZSQLProcessor | Компонент для выполнения SQL скриптов в формате различных СУБД |
![]() |
TZSQLMonitor | Компонент для логирования различных запросов и другой информации при работе с СУБД |
![]() |
TZSequence | Компонент для работы с последовательностями/генераторами значений в СУБД |
![]() |
TZIBEventAlerter | Компонент для работы с событиями в СУБД Firebird/Interbase |
![]() |
TZPgEventAlerter | Компонент для работы с событиями в СУБД PostgreSQL |
Простой пример использования ZeosLib.
Создаем в Lazarus простое приложение. Затем на форму добавляем компоненты TZConnection, TZQuery, TDataSource с вкладки Data Access, а так же простой грид TDBGrid.
Настраиваем связи . У DBGrid1 в свойстве DataSource выбираем DataSource1, у DataSource1 в свойстве DataSet выбираем ZQuery1, у ZQuery1 в свойстве Connection указываем ZConnection1.
Затем кликаем по кнопке на форме и в событие пишем
procedure TForm1.Button1Click(Sender: TObject); begin ZConnection1.Protocol:='sqlite-3'; // указываем что будем работать с sqlite ZConnection1.Database:='C:\testdb.db'; // указываем базу данных ZConnection1.ClientCodepage:='UTF8'; // указываем кодировку базы данных try ZConnection1.Connect; // пробуем подключиться if ZConnection1.Connected then // проверяем что подключились ShowMessage('Подключение успешно'); ZQuery1.SQL.Text:='select * from main ';// вставляем sql код ZQuery1.Open; // выполняем запрос except ShowMessage('Ошибка подключения'); end; end;
После чего запускаем программу. После запуска программы нажимаем на кнопку и в гриде отобразятся данные.
В последующих статьях для работы с СУБД я буду использовать ZEOSlib.
Предыдущая статья Релиз Lazarus 1.6