» » Приложения для работы с базой данных

Приложения для работы с базой данных

Программы для управления и работы с базами данных.

↓ Новое в категории "Программы для управления и работы с базами данных.":

Я бы сказал, что самое главное правило, которого стоит придерживаться при разработке приложений, которые обращаются к БД, это трехслойная архитектура: UI - Business Logic - DB. В самом тупом случае, слой DB у вас может представлять собой набор хелперов для работы с БД.

В частности, отмечу некоторые важные моменты:

Рис. 42. Список источников данных

Данный диалог предоставляет следующий
выбор источников данных:

- Database - База данных;

- Service - Служба, это
некоторый сервис, предоставляющий данные. Чаще всего это Web-сервис;

- Object - Объект для
выбора объекта, который будет генерировать данные и объекты для работы с ними.

В
нашем случае необходимо выбрать пункт «База данных» («Database»). Появляется окно
выбора соединения с данными (рис. 43).

Рис. 43. Выбор соединения с данными

При выборе в левой панели утилиты какого-либо узла, в правой части на странице Definition отображается вся необходимая информация для этого объекта. Назначение параметров локальных драйверов BDE представлено в табл. 2.

Таблица 2. Параметры драйверов BDE для локальных баз данных.

Параметр Назначение STANDART DEFOLT DRIVER Задает тип конкретного локального драйвера (Paradox, dBase, FoxPro, Asc) .

ENABLE BCD Определяет способ представления вещественных чисел. При значении True такие числа преобразуются в формат BCD (десятичные с двоичным кодированием) , который позволяет округлять погрешности высших разрядов дробной части числа. Точность составляет 20 знаков после запятой.

PATH Указывает путь к файлам базы данных.

PARADOX NET DIR Указывает путь к файлу обеспечения сетевого доступа PDOXVSRS. NET. Драйвер приложения, который работает с БД локально, должен указывать на этот файл, расположенный на том же компьютере. Драйвер приложения обращающийся к БД по сети, должен указывать на подключенный сетевой диск сэтим файлом.

VERSION Нередактируемая информация о версии драйвера.

TYPE Тип СУБД. Для Paradox имеет значение FILE только для чтения.

LANGDRIVER Определяет драйвер языковой поддержки.

BLOCK SIZE Задает размер блоков дискового пространства для хранения записей, кратно 1024.

FILL FACTOR Определяет процент заполнения блока дискового пространства при хранении индексов, по умолчанию 95%.

LEVEL Задает формат временной таблицы в памяти: 3-совместим с Paradox 3.5 и ниже 4-Paradox 4.0

5-Paradox 5.0

7-Paradox STRICTINTEGRTY Определяет возможность использования приложения на базе Paradox 4.0 более поздних таблиц с ссылочной целостностью. При значении TRUE использование разрешается, но возникает риск нарушения целостности данных.

DBASE VERSION Нередактируемая информация о версии драйвера.

TYPE Тип СУБД. Для dBASE имеет значение FILE только для чтения.

LANGDRIVER Определяет драйвер языковой поддержки.

LEVEL Задает формат таблиц. Значение соответствует номеру версии СУБД.

MDX BLOCK SIZE Размер блоков для файлов с расширением MDX, кратно 5/2 MEMO FILE BLOCK Размер блоков для файлов с данными типа memo, кратно 5/2 SIZE FOXPRO VERSION Нередактируемая информация о версии драйвера TYPE Тип СУБД. Для FoxPro имеет значение FILE только для чтения.

LANGDRIVER Определяет драйвер языковой поддержки LEVEL Имеет значение 25.

5. Интерфейс прикладного программирования.

Любое приложение Delphi, работающее с базами данных и написанное с использованием стандартных компонентов доступа к данным, обращается к данным и получает результат при помощи BDE. При этом механизм доступа к данным использует вызовы функций из API BDE.

Интерфейс прикладного программирования Delphi позволяет создать любые приложения для работы с БД с самыми разнообразными функциями. При этом не имеет значения способ доступа к данным, так как BDE обеспечивает связь приложения с базой данных на уровне драйверов и псевдонимов.

НА практике не возникает необходимости создания приложения, использующего только функции BDE без применения компонентов для доступа к данным VCL. Поэтому рассмотрим способ приложения, использующего вызовы отдельных функций BDE.

Для создания приложений на основе вызовов функций BDE необходимо выполнить следующие операции: 1. Инициализация BDE (функция DbiInit) .

2. Открытие объектов базы данных (функция Dbiopen Database) .

3. Определение рабочего каталога (функция Dbi Set Direktory) , если на предыдущем этапе не задан псевдоним БДю 4. Определение временного каталога (функция Dbi Set Private Dir) .

5. Открытие набора данных и создание курсора (функции DbiOpen Table, DbiQExec и пр. ;дескриптор курсора hDBICur) .

6. Заполнение структуры CUR Props, содержащий данные о курсоре и наборе данных (функция Dbi Get Cursor Props) .

7. Выделение памяти для буфера записи.


  • Объекты не
    хранят только простые данные в своих атрибутах. Там могут храниться
    также коллекции и связи с другими объектами.

  • В большинстве
    реляционных баз данных, включая MySQL и mSQL, нет средств, позволяющих
    моделировать наследование.


Практические правила для объектно-реляционного моделирования


  • У
    каждого сохраняемого класса в базе данных есть своя таблица.

  • Поля
    объектов с простыми типами данных (целые, символы, строки и т.
    д.) сопоставлены колонкам в соответствующей таблице базы данных.

  • Каждая
    строка таблицы базы данных cоответствует экземпляру
    соответствующего хранимого класса.

  • Каждая
    связь между объектами типа «многие-ко-многим» требует
    таблицы-связки, так же как это требуется для объектов базы
    данных типа «многие-ко-многим».

  • Наследование моделируется с помощью отношения «один-к-одному»
    между таблицами, соответствующими классу и подклассу.


Практические правила для объектно-реляционного моделирования


  • У
    каждого сохраняемого класса в базе данных есть своя таблица.

  • Поля
    объектов с простыми типами данных (целые, символы, строки и т.
    д.) сопоставлены колонкам в соответствующей таблице базы данных.

  • Каждая
    строка таблицы базы данных cоответствует экземпляру
    соответствующего хранимого класса.

  • Каждая
    связь между объектами типа «многие-ко-многим» требует
    таблицы-связки, так же как это требуется для объектов базы
    данных типа «многие-ко-многим».

  • Наследование моделируется с помощью отношения «один-к-одному»
    между таблицами, соответствующими классу и подклассу.


Мы не предусмотрели связанной таблицы
для оценок. Реализуем возможность выбора
из списка.


Для этого занесем в соответствующую
колонку (свойство Colums)
значения оценок. Т.к. колонка оценок
4-ая, а нумирация колонок начинается с
0, то можно записать следующий код
отрабатываемый один раз при создании
формы.

procedure
TMainForm.FormShow(Sender: TObject);

begin


DBGrid2.Columns.Items[3].PickList.Add('0');


DBGrid2.Columns.Items[3].PickList.Add('1');


DBGrid2.Columns.Items[3].PickList.Add('2');


DBGrid2.Columns.Items[3].PickList.Add('3');


DBGrid2.Columns.Items[3].PickList.Add('4');


DBGrid2.Columns.Items[3].PickList.Add('5');


end;


Для перемещения по таблице и ее
редактирования можно использовать
компонент DBNavigator


Он связывается с компонентом DataSetи позволяет управлять данными.


Доступны следующие кнопки:


В
начало таблицы,


на
шаг назад,


на
шаг вперед,


в
конец таблицы,


добавить
поле,


удалить
поле,


режим
редактирования,


подтвердить
изменения,


отменить
изменения,


обновить
данные.


Кнопки, которые необходимо отобразить
указывается в свойстве VisibleButtons.


Компонент связывается с наборам данных
с помощью свойства DataSource

Такое разграничение может слегка усугубить ситуацию с удобством использования данных программ, однако при работе и управлении БД, какого-либо недостатка не замечалось. Достаточно открыть два приложения, установить в обоих случаях соединение и работать в каждой при необходимости. Да и MySQL Query Browser использовался не так часто, причем его запуск всегда происходил отдельно, так как в выполнении какого-либо запроса вручную никто не требовал.

Так же, кто изучал книгу Энди Хэрриса «PHP, MySQL для начинающих» могли заметить, что все программы, особенно которые требовали подключения к серверу БД, прописывались вручную. То есть при создании базы не использовалось какой-либо приложение для управления, типа phpMyAdmin, а все создавалось только на основе кода. Вот для этих случаев я и использовал MySQL Query Browser.

9. DBTools Manager

DBTools Manager — приложение для управления данными, с встроенной поддержкой MySQL, PostgreSQL, MSAccess, MSSQL Server, Oracle и других БД. Поддерживаемые платформы: Windows 2000, XP, Vista, 7.

DBTools Manager представлен в бесплатном (Standard) и платном варианте (Enterprise). Стоимость составляет 69.90 долл. США за одну лицензию, при покупке нескольких лицензий предусмотрены скидки.

Подробнее ознакомиться и приобрести DBTools Manager можно здесь www.dbtools.com.br/EN/dbmanagerpro

image

Что делает DBTools Manager популярным?

  • управление базами данных, таблицами;
  • наличие редактора запросов;
  • наличие мастера создания форм и отчетов;
  • возможность импорта и экспорта данных из различных источников, среди которых MSAccess, MSExcel, Paradox, FoxPro, DBF, ODBC таблицы, текстовые и XML файлы;
  • конструктор диаграмм и другие возможности.

ссылка на видео Видеоверсию этого раздела см. на странице Видео: создание простого приложения для работы с данными.

Наверх