Lazarus не содержит встроенный менеджер баз данных для администрирования и разработки баз данных, включая выполнение SQL-запросов
Проверю :)
Компоненты для работы с БД есть в лазаре, а вот менеджера БД я не видел. Ткни пальцем в него, может я не туда все эти годы смотрел?
Это требование конкурсной документации. Компоненты Lazarus позволяют выбрать БД и таблицу из списка (то есть существуют ли средства получения данных и их изменения на существующей БД)?
Да существуют компоненты для работы с БД: http://wiki.lazarus.freepascal.org/Lazarus_DB_Faq Вопрос в другом: как эти компоненты сделать предустановленными в пакете. В данный момент над этим работаю. На счёт менеджера БД это отдельная тема и к lazarus отсносится поскольку, постольку. В Delphi для этого существует DBEAdministrator и DBDesktop, которые являются самостоятельными продуктами. Да они поставлялись в составе Delphi, но так же они шли и отдельно. Я смотрел на DBDesigner - это было бы не плохим дополнением к fpc/lazarus, но он написан на Delphi/Kylix и перенести его на fpc/lazarus не так то просто. Как я понял dottedmag@ имел ввиду систему, аналогичную BDEAdministrator/DBDesktop или подобную DBDesigner. В данном случае надо смотреть, что есть для такого у нас, не зависимо от fpc/lazarus и что есть в инете под GPL.
Фишка в том, что для соответствия конкурсной документации по НП-18 (Школьный Линукс) для ПО для объектно-ориентированного программирования на языке Pascal: "Средство разработки должно обеспечивать возможность соединения и работы с реляционными базами данных. Должно включать в себя встроенный менеджер баз данных для администрирования и разработки баз данных, включая выполнение SQL-запросов." Собственно мы предложили Lazarus, но возникла проблема с указанной функциональностью. Другой софт не подходит, нужен менеджер в рамках Lazarus. Может, написать расширение для выполнения SQL-запросов?
Пакет компонентов SQLDBLaz. http://wiki.lazarus.freepascal.org/Lazarus_Database_Tutorial Подерживаются: mysql,postgresql, sqlite, MSSQL, Interbase/Firebird. Та же есть компоненты для соединения с Oracle и БД через ODBC.Есть компоненты для выполнения SQL-запросов и SQL-транзакций. А теперь объясните, что имеется ввиду под: "Должно включать в себя встроенный менеджер баз данных для администрирования и разработки баз данных, включая выполнение SQL-запросов." ? В Delphi это делается с помощью: BDEAdministartor - управление БД - создание, удаление,параметры соеденения. DBDesktop - непосредственно работа по созданию таблиц БД, изменения структуры таблиц БД, индексов. Редактирование содержимого таблицы БД. То же самое можно делать и из программного кода. В каком виде должен быть этот "встроенный менеджер БД"?
Смотрю сейчас на http://sourceforge.net/projects/dbdesigner-fork вроде подходит к нам, но надо делать в таком случае порт с delphi/kylix. Попробую сделать. Но сроки хоть какого то результата да же не скажу.
(In reply to comment #7) > Смотрю сейчас на http://sourceforge.net/projects/dbdesigner-fork > вроде подходит к нам, но надо делать в таком случае порт с delphi/kylix. > Попробую сделать. Но сроки хоть какого то результата да же не скажу. Смотрите по трудозатратам. Может, лучше сделать пример, указанный на http://wiki.lazarus.freepascal.org/MySQLDatabases в виде шаблона проекта. Чтобы его можно было увидеть в Файл - Создать... - Project - Database Manager Это самый быстрый по доступу вариант. Есть вариант с созданием dbmanager.lpi, но его надо найти, чтобы открыть. Что думаете?
>Смотрите по трудозатратам. Слишком много kylix-специфичного >Может, лучше сделать пример, указанный на >http://wiki.lazarus.freepascal.org/MySQLDatabases в виде шаблона проекта. >Чтобы его можно было увидеть в >Файл - Создать... - Project - Database Manager >Это самый быстрый по доступу вариант. Есть вариант с созданием dbmanager.lpi, >но его надо найти, чтобы открыть. Что думаете? Думаю проще писать с нуля. Начать с подобия SQLExplorer'а из Delphi для MySQL'а. Ну а дальше развивать, если будет интересен кому-либо. Здесь три вещи: 1) компоненты, типы данных и подпрограммы для работы с БД: имеется в fpc/lazarus; 2) система визуального построения БД: openoffice.base, kexi; 3) система администрирования БД: pgadmin, phpMySQL и т.п. Надо определится, что мы хотим. Встроенный в lazarus менеджер БД ни о чём не говорит. Надо чёткая и ясная конкретика: по возможностям, функционалу, типам поддерживаемых БД.
(In reply to comment #9) > Надо определится, что мы хотим. Встроенный в lazarus менеджер БД ни о чём не > говорит. Надо чёткая и ясная конкретика: по возможностям, функционалу, типам > поддерживаемых БД. Нам нужен примитивный, но работающий менеджер баз данных в Lazarus. Именно в Lazarus. Это должен быть проект, прописываемый в шаблоны проектов. Состоит из одной формы. Менеджер баз данных PostgreSQL для Lazarus Сервер [localhost] Имя пользователя [root ] Пароль [ ] Запрос: __________________ <Выполнить> __________________ Результат: __________________ __________________ __________________ Поддерживаемая БД: posgresql. Форма должна возвращать результаты выполнения SQL-запросов на указанный сервер.
Черновой набросок отправил на cas@. Проверил на своём MySQL5 - работает.
Перевешиваю на конкретный пакет
На какой?
Что то я это дело проглядел :( В общем ответ на этот баг есть в лазаре и у нас он имеется: [root@oasu3 /]# rpm -ql lazarus-tools | grep 'lazdatadesktop.lpr'
[root@oasu3 /]# rpm -ql lazarus-tools | grep 'lazdatadesktop.lpr' /usr/lib/lazarus/tools/lazdatadesktop/lazdatadesktop.lpr [root@oasu3 /]#
Не нашёл, как задействовать его из интерфейса.
Через инструменты. Но это должен быть исполняемый файл. В следующей сборке задействую его компиляцию и изменю описание пакеты lazarus-tools на расширенное и понятное. Надо ещё там посмотреть как прикрутить работу с mysql4.1, mysql5.