63409

ИНФОРМАЦИЯ О РАЗЛИЧНЫХ СУБД

Лекция

Информатика, кибернетика и программирование

За почти пятидесятилетнюю историю развития БД были созданы сотни различных программных продуктов, которые обеспечивали управление данными. Это были разработки как ведущих разработчиков программных средств (MS, IBM, Oracle, др.), так и программные средства некоторых организаций в России и за рубежом.

Русский

2014-06-20

739 KB

26 чел.

PAGE  112

VI. ИНФОРМАЦИЯ О РАЗЛИЧНЫХ СУБД

СУБД ACCESS

СУБД MySQL

СУБД Sybase 

СУБД DB2

СУБД Informix

СУБД Teradata Database

СУБД InterBase (FirebirdSQL)

СУБД dBASE III Plus и  FoxPro

СУБД Ingres

СУБД SQL Server

Другие СУБД (PostgreSQL, "Линтер", Caché, "Паллада", eXtremeDB, Progress)

За почти пятидесятилетнюю  историю  развития  БД  были  созданы  сотни  различных  программных  продуктов, которые обеспечивали управление данными. Это были  разработки  как  ведущих  разработчиков  программных  средств  (MS,  IBM,  Oracle,  др.), так и  программные средства некоторых организаций в России  и  за рубежом.  Только  отдельные  фирмы   разработчики сохранили  свою  приверженность  к  этому  направлению.  Рассмотрим  кратко  наиболее  известные  СУБД.

СУБД ACCESS

Microsoft Access   это  настольная  СУБД.  Для  работы  с  данными  используется  процессор  баз  данных  Microsoft  Jet 4.0,  объекты  доступа  к  данным  и  средство  быстрого  построения  интерфейса   Конструктор  форм.  Для  получения  распечаток  используются  Конструкторы  отчетов.  Автоматизация рутинных операций  может  быть  выполнена  с  помощью  макрокоманд.  На тот случай, когдаЕсли  не  хватает  функциональности  визуальных  средств,  мы можноем обратиться  к  созданию  процедур  и  функций.  При  этом  как  в  макрокомандах  можно  использовать  вызовы  функций,  так  и  из  кода  процедур  и  функций  можно  выполнять  макрокоманды [2].

В  отличие  от  других  рассматриваемых  средств  разработки,  СУБД  Access  имеет  русифицированный  интерфейс  и  частично  переведенный  на  русский  язык  файл  контекстной  помощи.  Характеристики  СУБД  ACCESS  представлены  в  таблицах  1,  2.

Таблица  1  -  Спецификации  БД

Характеристика

Значение

Максимальный  размер  файла  БД  (.mdb)

1  Гбайт

Число  объектов  в  базе  данных

32768

Количество  модулей,  включая  формы  и  отчеты

1024

Число  символов  в  имени  объекта

64

Число  символов  в  пароле

14

Число  символов  в  имени  пользователя  или  группы

20

Число  одновременно  работающих  пользователей

255

Таблица  2  -  Спецификации  таблиц

Характеристика

Значение

Число  символов  в  имени  таблицы

64

Число  символов  в  имени  поля

64

Количество  полей  в  таблице

255

Количество  открытых  таблиц

1024

Максимальный  размер  таблицы

1  Гбайт

Число  символов  в  текстовом  поле

255

Число  символов  в  поле  Memo  

при  вводе  данных  программным  путем

65535  

1 Гбайт

Максимальный  размер  объекта  OLE

1  Гбайт

Количество индексов в  таблице

32

Количество  полей  в  индексе

10

Число  символов  в  выражении  для  условия  на  значение

2048

Число  символов  в  описании  таблицы  или  поля

255

Число  символов  в  записи,  не  считая  поля  MEMO  и  поля  объектов  OLE

2000

Число  символов  в  выражении  для  значения  свойства

255

В  СУБД  Access  существуют  следующие  объекты   таблицы,  формы,  отчстыотчеты,  запросы,  макросы,  модули,  события.

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

В  СУБД  Access  есть  несколько  способов  создания  таблиц:  в  режиме  «Конструктор»,  с  помощью  «Мастера  таблиц»,  путем  непосредственного  ввода  данных  в  таблицы,  через  запрос  SQL,  с  применением  функции  языка  Visual  Basic for  Applications  (VBA),  путем  импорта  таблиц  из  других  БД.  Каждый  из  этих  способов  имеет  свои  плюсы  и  минусы.  Во  всех  случаях  остается  возможность  в  любое  время  изменить  и  расширить  созданную  БД.  Хотя  при  созданной  и  эксплуатируемой  БД  нельзя  без  веских  причин  изменять  структуру  БД  (добавлять,  удалять  поля,  изменять  свойства  полей).

Создание  таблицы  в  режиме  «Конструктор»  позволяет  описать  каждое  поле  и  назначить  свойства  полям.  Давайте короткие имена им. Например, [Номер документа] = [Nдок], [Название организации] = [Фирма], [Единица измерения]=[ЕдИзм]. Это связано с тем, что, применяя короткие имена полей, уменьшается длина запросов, они обработываются быстрее и ошибок меньше. Для  каждого  поля  задается  значение  по  умолчанию,  размер,  имя,  свойства,  дается  описание.  Поле  можно  переименовывать,  указать  подпись  в  качестве  альтернативного  имени,  удалить,  изменить  тип  данных,  настроить  параметры  по  умолчанию.

Имеется также возможность создать БД сС  помощью  «Мастера» можно быстро создать БД  со  всеми  необходимыми  таблицами,  формами  и  отчетами на основе имеющихся в системе заготовок.  Это  простейший  способ  начального быстрого создания  БД.  

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

Встроенный язык  SQL  позволяет  максимально  гибко  работать  с  данными  и  значительно  ускоряет  доступ  к  внешним  данным.  С  помощью  команды  Create   можно  определить  состав  полей  и  их  основные  свойства.

Несмотря на свою ориентированность на конечного пользователя, в Access присутствуетС помощью  языка  программирования  Visual Basic for Application, который позволяет можно  создавать  массивы,  свои  типы  данных,  вызывать  DLL-функции,  с  помощью  OLE  Automation  - контролировать  работу  приложений,  которые  могут  функционировать  как  OLE-серверы.  Можно  целиком  создавать  базы  данных  с  помощью  кодирования,  когда  в  этом  появляется  необходимость.

Для  визуализации  данных  используются  формы.  Большая  часть  данных,  представленных  в  форме,  берется  из  таблицы  или  запроса.  Другая  информация,  несвязанная  ни  с  таблицей,  ни  с  запросом,  хранится  в  макете  формы.  Для  создания  связи  между  формой  и  записями  таблицы,  являющейся  источником  данных  формы,  используются  графические  объекты,  называемые  элементами  управления.  Формы  могут  содержать  следующие  разделы:  заголовок,  верхний  колонтитул,  область  данных,  нижний  колонтитул  и  примечание.  Формы  создаются  с  помощью  Конструктора  или  Мастера.  В  форме  отчетов  можно  задать  вставку  даты,  построение  диаграмм,  автоотчет.

С  помощью  запросов  Select  можно  просматривать,  анализировать  и  изменять  данные  из  нескольких  таблиц.  Они  также  используются  для  получения  данных  из  таблиц  для  форм  и  отчетов.  Наиболее часто используется запрос на выборку. При  его выполнении  запроса на выборку данные,  удовлетворяющие  условиям  отбора,  выбираются  из  одной  или  нескольких  таблиц  и  выводятся  в  определенном  порядке.  Запрос  может  вычислять  сумму,  среднее  значение,  число  элементов  и  значения  других  статистических  функций,  группируя  данные  и  выводя  их  в  компактном  виде.  Запрос  создается  с  помощью  соответствующего  Мастера  или  Конструктора  запросов.  В  бланке  запроса  указывается  значения  полей,  которые  будут  использоваться  в  вычислениях  или  в  качестве  заголовков  строк  и  столбцов.  С  помощью  коаманд   SQL  и  фильтров  можно  также  добавлять  таблицы,  поля,  изменять  заголовки  столбцов,  отображать  все  поля,  перемещать  столбцы,  редактировать,  сортировать  по  столбцам,  осуществлять  запрос  записей  без  подчиненных  таблиц,  запрос  нескольких  элементов,  создавать  окно  ввода.  Условия  отбора  задаются  с  помощью  другого  поля,  сравнением  на  содержание  текста  или  значение  числа.

Отчет   это  средство  для  организации  данных  при  выводе  на  печать.  Сведения  для  отчета  берутся  из  базовой  таблицы,  запроса  или  инструкции  SQL,  являющихся  источниками  данных  для  отчета.  Другие  сведения  вводятся  при  разработке  отчета.  Вся  информация  в  отчете  разбивается  на  разделы,  каждый  из  которых  имеет  специальное  назначение.  При  печати  разделы  располагаются  на  страницах  в  определенном  порядке.  В  режиме  Кконструктора на  экране  отображается  макет  каждого  раздела  отчета  в  одном  экземпляре.  При  печати  некоторые  разделы  могут  неоднократно  повторяться.  Элементы  управления,  такие  как  надпись  или  поле,  находящиеся  в  разделе,  определяют  местоположение  информации  в  отчете.  Отчет  с  группировкой  данных  позволяет  вычислить  итоговые  значения  для  групп,  а  также  представить  информацию  в  удобном  для  использования  виде.  При  выводе  результатов  можно  поставить  номера  страниц,  указать  параметры  страниц,  отправить  по  e-mail,  печатать  одну  или  несколько  записей,  отчеты,  формы,  запросы  вывести  в  формате  Word  или  HTML.

Макросом  называют  набор  из  одной  или  более  макрокоманд,  выполняющих  определенные  операции,  такие  как  открытие  форм  или  печать  отчетов.  С  помощью  Макросов  можно  определить  горячие  клавиши,  создать  БД  с  помощью  окна,  др.  Макросы  могут  быть  полезны  для  автоматизации  часто  выполняемых  задач.  Например,  при  нажатии  пользователем  кнопки  можно  запустить  макрос,  который  распечатает  отчет.  Макрос  может  быть  как  собственно  макросом,  состоящим  из  последовательности  макрокоманд,  так  и  группой  макросов.  При  наличии  большого  числа  макросов,  объединение  родственных  макросов  в  группы  может  упростить  управление  базой  данных.  Для  просмотра  имен  макросов  для  выбранной  группы  макросов  достаточно  в  окне  макроса  в  меню  Вид  выбрать  команду  Имена  макросов.  При  запуске  макроса  в  группе  макросов,  выполняется  макрокоманда  в  столбце  Макрокоманда,  а  также  все  следующие  макрокоманды,  в  которых  столбец  Имя  макроса  пуст.  Для  запуска  макроса  из  группы  макросов  следует  указать  имя  группы,  а  затем,  через  точку,  имя  макроса.

Модуль  -  это  набор  объявлений  и  процедур  (программа -приложение)  на  языке  VBA,  используемом  также  в  Excel,  Word,  PowerPoint.  Модули  форм  и  модули  отчетов  связаны  с  определенными  формами  или  отчетами.  Они  часто  содержат  процедуры  обработки  событий,  запускаемых  в  ответ  на  событие  в  форме  или  отчете.  Процедуры  обработки  событий  используются  для  управления  поведением  формы  или  отчета  и  их  откликом  на  события,  например,  такие  как  нажатие  кнопки.  При  создании  первой  процедуры  обработки  события  для  формы  или  отчета  автоматически  создается  связанный  с  ней  модуль  формы  или  отчета.  Для  просмотра  модуля  для  формы  или  отчета  достаточно  нажать  кнопку  Программа  на  панели  инструментов  в  режиме  «Конструктор».  В  процедурах  модулей  форм  и  отчетов  могут  содержаться  вызовы  процедур,  добавленных  в  стандартные  модули.  В  стандартных  модулях  содержатся  общие  процедуры,  не  связанные  ни  с  каким  объектом,  а  также  часто  используемые  процедуры,  которые  могут  быть  запущены  из  любого  окна  БД.  Для  просмотра  списка  стандартных  модулей  БД  выберите  вкладку  «Модули»  в  окне  БД.  Формы,  отчеты  и  стандартные  модули  выводятся  также  в  окно  просмотра  объектов.

Событие  -  это  определенное  действие,  которое  происходит  над  объектами  БД  или  возникает  в  определенном  объекте.  СУБД  Access  реагирует  на  большое  число  различных  событий:  нажатие  кнопки  мыши,  изменение  данных,  открытие  или  закрытие  форм,  и  т. д.  Обычно  события  возникают  вследствие  действий  пользователя.  С  помощью  процедур  обработки  события  или  макроса  возможно  определение  собственных  откликов  на  события,  происходящие  в  форме,  отчете  или  элементе  управления.  При  создании  процедуры  обработки  события  для  объекта  в  модуль  формы  или  модуль  отчета  добавляется  именованная  заготовка  процедуры  обработки  события  для  данного  события  и  объекта.  Остается  только  дописать  код,  определяющий  желаемый  отклик  на  событие  в  форме  или  отчете.  Чтобы  в  ответ  на  событие  запустить  макрос,  следует  открыть  окно  свойств  для  формы,  отчета  или  элемента  управления,  найти  соответствующее  событию  свойство  и  установить  в  качестве  его  значения  вызов  макроса.

Рассмотрим  операции,  которые  можно  выполнять  над  различными  объектами  БД  ACCESS.

База  данных:  ОТКРЫТЬ,  ВЫХОД  из  ACCESS,  Архивариус,  Импорт/Экспорт  в/ из  Excel,  Access,  HTML,  Word,  dBase,  FoxPro;  Репликация  -  восстановление  основной  реплики,  использование  портфеля,  синхронизация,  создание  реплики,  устранение  конфликтов.;

Данные:  ВВОД,  ВЫДЕЛЕНИЕ,  ЗАМЕНА,  КОПИРОВАНИЕ,  ПОИСК,  РЕДАКТИРОВАНИЕ,  СОРТИРОВКА,  Исправление  ошибок  -  АВТОЗАМЕНА,. ОТМЕНА,  ОРФОГРАФИЯ;  Гиперссылка  -  создание  поля,  ВВОД,  ИЗМЕНЕНИЕ,  КОПИРОВАНИЕ;  Запись  -  ДОБАВЛЕНИЕ  НОВОЙ,  КОПИРОВАНИЕ,  ПЕРЕХОД,  УДАЛЕНИЕ;  Индекс  -  ключ,  индекс  (свойства, создание  для  одного  или  нескольких  полей);  Объекты  OLE  (рисунки,  звук,  видеоклипы,  файлы)   ВВОД.;

Операции  с  файлами:  восстановление  закрытой  и  открытой  БД,  преобразование  БД,  сжатие,  установка  папки  по  умолчанию,  защита  БД  на  уровне  пользователя,  ограничение  прав  пользователя,  создание  пароля  БД,  создание  файла  рабочей  группы,  шифровка/дешифровка,  резервное  копирование.;

Элемент  управления:  выделение,  выравнивание  текста  в  полях,  вычисление  и  добавление  полей,  изменение  свойств,  типа,  интервала,  ограничение  значений,  подготовка  надписей,  определение  шрифтов,  цвета.;

Справки:  содержание  и  предметный  указатель,  контекстная  помощь,  поиск  темы,  ПОМОШНИК,  совет  дня.

В  СУБД  ACCESS  имеется  возможность  построения  законченного  приложения  для  работы  низко  квалифицированного  пользователя  -  кнопочной  формы,  определение  параметров  запуска  приложения,  построение  пользовательского  меню  и  панелей  инструментов,. связывание  меню  и  панелей  инструментов  с  формами  и  отчетами.  

В  Microsoft  Access  есть  Мастер  анализа  таблиц,  анализатор  быстродействия  и  Мастер  анализа  приложений.  Мастер  анализа  таблиц  исследует  таблицу,  в  случае  необходимости  предлагает  новую  ее структуру  и  связи,  а  также  переделывает  ее.  Анализатор  быстродействия  исследует  всю  БД,  дает  рекомендации  по  ее  улучшению,  а  также  осуществляет  их.  

Начиная  с  версии  СУБД  Access  2000,  поддерживается  совместимость  версий  «снизу  вверх».  Это  означает,  что  .mde -файл  созданный  в   СУБД  Access  2000  будет  работать  в  более  поздних  версиях,  а  вот  наоборот  -  не  будет.  Дело  в  том,  что  от  версии  к  версии  меняется  формат  .mde  файла.  Преобразованная  таким  образом  БД  будет  работать  быстрее,  потому,  что  скомпилируются  все  модули  приложения.  Но  в  результате  уже  нельзя  редактировать  формы  и  отчеты  в  режиме  конструктора.  Преобразовать  файл  .mde  в  .mdb  обратно  стандартными  средствами  СУБД  Access  так  же  невозможно.  Поэтому  необходимо  всегда  сохранять  исходную  (.mdb)  версию  БД.  Можно  сделать  исполняемый  файл в Access .exe,  способный  работать  без  наличия СУБД  Access.  

При  компиляции  в  СУБД  Access  создается  не  машинный  (двоичный)  код,  а  так  называемый  p-код.  Р-код  близок  к  машинному,  но  программа  в  р-коде  не  может  быть  непосредственно  выполнена  процессором.  Преобразование  (трансляция)  в  двоичный  код  происходит  во  время  выполнения  программы. Это сделано для отладки приложений. . Без  p-кода  невозможно  было  бы  прерывать  выполнение  приложений,  редактировать  тексты  программ  и  снова  продолжать  выполнение.  

При  работе  в  сети  файл  mdb  размещают  на  сервере,  а  mde-программы  на  компьютерах  пользователя.  Если  надо  поменять  старую  версию  программы  на  новую,  то  не  надо  останавливать  всю  работу  предприятия  в  случае  с  одним  mdb  файлом.  Просто  отлаживается  mde-программа  на  компьютере  пользователя,  добавляются  поля,  таблицы  в  файлы  mdb  на  сервере,  а  потом  заменяются  по  сети  mde-файлы  пользователей.  Если  mdb-таблицы  хранятся  на  сервере,  то  можно  подключиться  к  ним  через  драйверы  ODBC  из  любой  версии  СУБД  Access.

Если  количество  таблиц  превышает  50  шт.,  то  с  таким  числом  таблиц  трудно  работать.  Поэтому  надо  разделять  БД  на  несколько  частей.

Установка  связей  между  таблицами  делается  в  специальной  вкладке  «Схема  данных».  В  открывшемся  диалоговом  окне  выбираем  кнопку  «Добавить  таблицу».  В  появившемся  диалоговом  окне  раскрываем  вкладку  таблицы  и  выбираем  нужные.

Для  установки  связи  между  таблицами  нужно  выбрать  в  одной  из  таблиц  поле  для  связи,  нажать  левую  кнопку  мыши  и  перетащить  поле  во  вторую  таблицу.  Отпустить  левую  кнопку  мыши  над  тем  полем  подчиненной  таблицы,  с  которым  устанавливается  связь.  После  этого  появится  диалоговое  окно  «Изменение  связей».  Здесь  поставьте  автоматическую  проверку  ссылочной  целостности  -  флажок  обеспечение  целостности  данных,  и  если  требуется,  каскадное  обновление/удаление  связанных  полей.  В  каждой  таблице  должен  быть  ключ  -  идентификатор  записи.  Чаще  всего  ключами  делают  поля  типа  «счетчик»  -  числовое  поле  с  уникальными  значениями.  Но  можно  проиндексировать  еще  одно  поле  в  таблице  и  тогда  поиск  пойдет  быстрее.

Однако индексирование может привести и к обратному эффекту. При  добавлении  и  удалении  записей  или  при  обновлении  значений  в  индексном  поле  требуется  обновлять  индекс,  что  при  большом  количестве  индексов  в  таблице  может  замедлять  работу.  Поэтому  индексы  рекомендуется  создавать  только  для  тех  полей  таблицы,  по  которым  наиболее  часто  выполняется  поиск  записей.  Индексировать  можно  любые  поля,  кроме  МЕМО-полей,  полей  типа  Гиперссылка  и  объектов  OLE.

Для  индексирования  открываем  таблицу  в  режиме  Конструктор,  выбираем  поле,  для  которого  требуется  создать  индекс,  далее  во  вкладке  «Общие»  выбираем  для  свойства  Индексированное  поле  значение:  Да  (Допускаются  совпадения)  или  Нет  (Совпадение  не  допускаются).  Индекс  может  быть  составным.  Обычно  такую  индексацию  применяют,  когда  нужно  задать  уникальные  значения  для  группы  полей.  Снова  открываем  таблицу  в  режиме  Конструктора,  на  панели  инструментов  Конструктор  таблиц  жмем  кнопку  Индексы.  В  первой  пустой  строке  поля  Индекс  вводим  имя  индекса,  затем  в  поле  Имя  поля  жмем  на  стрелку  и  выбираем  первое  поле,  для  которого  необходимо  создать  индекс.  В  следующей  строке  поля  Имя  поля  указываем  второе  индексируемое  поле,  причем  для  данной  строки  поле  Индекс  должно  оставаться  пустым.  Далее  повторяем  это  для  всех  полей,  которые  необходимо  включить  в  индекс  (разрешается  включать  в  индекс  до  10  полей).

Для  коммерческого  распространения  приложений,  разработанных  на  СУБД Access,  предназначен  пакет  Access  Developer  Toolkit,  вместе  с  которым  поставляются  некоторые  дополнения  и  несколько  дополнительных  объектов  ActiveX.  Главное  качество  СУБД Access, которое привлекает к нему многих пользователей,   тесная  интеграция  с  Microsoft  Office.  К  примеру,  скопировав  в  буфер  графический  образ  таблицы,  открыв  Microsoft  Word  и  применив  вставку  из  буфера,  мы тут же получим  в  документе  готовую  таблицу  с  данными  из  БД.

Вся  работа  с  базой данныхБД  осуществляется  через  окно  контейнера базы данных.  Отсюда  осуществляется  доступ  ко  всем  объектам,  а  именно:  таблицам,  запросам,  формам,  отчетам,  макросам,  модулям.

Посредством  драйверов  ISAM  можно  получить  доступ  к  файлам  таблиц  некоторых  других  форматов:  DBASE,  Paradox,  Excel,  текстовым  файлам,  FoxPro 2.x,  а  посредством  технологии  ODBC   и  к  файлам  многих  других  форматов.

СУБД Access  может  выступать  как  в  роли  OLE  контролера,  так  и  ОЕЕ  сервера.  Это  значит,  что  можно  контролировать  работу  приложений  Access  из  любого  приложения,  при  условии,  что  оно  может  выступать  в  роли  OLE  контролера  и  наоборот.

При  создании  многих  объектов  и  элементов  управления  в  Access  предоставляется  несколько  возможностей  реализации  поставленной  задачи.  Как  правило,  большая  часть  объектов  создается  визуально,  путем  нажатия  кнопки  Создать.  При  этом  необходимо  находиться  в  контейнере  базы  данных  на  той  вкладке,  объекты  которой  вас  интересуют.  В  качестве  альтернативы  можно  воспользоваться  меню  Вставка  и  выбрать  в  нем  соответствующий  объект.

Многие  разработчики  стараются  «навешивать»  на  одну  форму  множество  элементов:  полей,  полей  со  списками,  подчиненных  форм,  вкладок  на  которых  опять  поля  и  т. д.  Все это делается с целью сделать приложение более «наглядным», чтобы «все сразу было видно». Это  чревато  потерей  скорости  загрузки  такой  формы.  Дело  в  том,  что  обычно  каждый  элемент  имеет  связанный  с  ним  источник  данных,  который  нужно  «подцепить»  при  открытии.  

Бывает  так,  что  прежде  нормально  грузившаяся  форма,  вдруг  начинает  «тормозить».  Одной  из  причин  может  быть  то,  что  источник  данных  такой  формы  -  вся  таблица,  которая,  как  известно,  заполняется.  Все  нормально,  пока  данных  там  порядка  нескольких  тысяч строк.  Если  больше,  то  при  работе  такая  форма  заметно  потяжелеет,  особенно,  если  она  сделана  как  подчиненная  на  основной.  Как  выход  -  использовать  в  качестве  источника  данных  формы  запрос,  где  количество  записей  можно  ограничить,  например,  периодом  дат  (текущий  год,  месяц).

Старайтесь  не  использовать  больше  одной  -  двух  подчиненных  форм.  Помните,  что  при  открытии  основной  формы  последовательно  происходит  загрузка  в  саму  форму  и  подчиненные,  что  требует  времени.  Особенно  это  касается  форм  с  вкладками,  на  которых  расположены  подчиненные.  Уменьшайте  на  форме  число  скрытых  полей  и  подчиненных  форм,  которые  используются  для  вычисления  или  поиска.

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

Если  убрать  галочку  для   раздела  меню  «Сервис  -  Параметры  -  Вкладка  общие  -  Отслеживать  автозамену  имен»,  то  приложение  будет  работать  быстрее.

Проводите  регулярное  сжатие  БД.  Это  можно  настроить  автоматически  в  разделе  меню  «Сервис  -  Параметры  -  Вкладка  общие  -  Сжимать  при  закрытии».  Дело  в  том,  что  в  СУБД  Access  есть  своя  «корзина»,  и  при  удалении  записи  физически не  удаляются,  а  помечаются  как  удаленные  (знаком  *),  то  есть  «становятся  в  очередь  на  удаление».  Так  же  в  СУБД  Access  есть  скрытые  системные  таблицы,  в  которых  хранятся  параметры  форм.  Форму  удалили,  а  параметры  остались.  Включили  в  БД  много  рисунков,  она  резко  увеличилась  по  объему,  удалили  рисунки  -  а  размер  остался.  Выход  -  сжатие  базы  (дефрагментация).  При  регулярном  сжатии  база  становиться  более  устойчивой.

Рекомендуется  отключить  Journal  (Журнал)  в  Outlook.  Журнал  Outlook  генерирует  запись  при  каждом  запуске  и  выходе  из  приложения.  Этот  журнал  может  стать  очень  большим  и  будет  поглощать  дисковое  пространство  и  процессорное  время,  необходимое  приложению.

Рекомендации  по  использованию  СУБД  Access:

  •  воздерживаться  от  употребления  сложных  выражений  в  запросах;
  •  по  возможности  следует  пользоваться  оператором  Between  для  уменьшения  количества  строк  в  результирующем  наборе  вместо  операторов  "больше  чем"  и  "меньше  чем";
  •  использовать  скомпилированные  (сохраненные)  запросы;
  •  для  повышения  эффективности  использования  СУБД  Access,  в  первую  очередь,  следует  увеличить  оперативную  память.  

MySQL

СУБД MySQL является одной из самых известных, надежных и быстрых из всего семейства существующих СУБД, распространяется вместе с исходными текстами. Исходные коды, скомпилированные модули под множество платформ и разнообразные утилиты для этой СУБД можно найти на сайтах http://www.mysql.com, http://www.nestor.minsk.by/kg/, http://bbd.net.ru/mysql/001d01.shtml, http://protoplex.ru/.

В  2008  г.  корпорация  Sun  купила  компанию MySQL AB AB,  в  2010  г. корпорация  Sun  была поглощена  корпорацией  Oracle.  Распространяется под GNU General Public License и под собственной коммерческой лицензией, на выбор. 

Эта  СУБД  изначально  предназначалась  для  использования  индексно-последовательного  метода  доступа  (ISAM)  к  данным  веб-сайтов [1].  Особенность  такого  типа  нагрузки  заключается  в  применении  преимущественно  операции  чтения  при  наличии  множества  простых  запросов.  Это  обусловило  появление  кэша  запросов,  который  еще  выше больше поднял  производительность  MySQL.  Ориентация  на  высокую  производительность  привела  к  созданию  MySQL  Cluster,  что  позволило  СУБД  использовать  более  одного  физического  сервера.  Одна  из  наиболее  сильных  черт  MySQL  заключается  в  возможности  подключать  различные  механизмы  хранения.  По  умолчанию  используется  MyISAM,  что  обеспечивает  высокую  производительность,  когда  преобладают  операции  чтения.  А  механизм  InnoDB  обеспечивает  надежность  транзакций,  которая  необходима  при  большом  количестве  операций  записи.  Для  таблицы  с  преобладанием  операций  чтения, таких как таблица кодов стран, можно  использовать  MyISAM,  а  для  транзакционной, такой как таблица с заказами на покупку,   InnoDB.  MySQL используется и для приложений, требующих поддержки транзакций.

СУБД MySQL является одной из самых известных, надежных и быстрых из всего семейства существующих СУБД, распространяется вместе с исходными текстами. Исходные коды, скомпилированные модули под множество платформ и разнообразные утилиты для этой СУБД можно найти на сайтах http://www.mysql.com, http://www.nestor.minsk.by/kg/, http://bbd.net.ru/mysql/001d01.shtml, http://protoplex.ru/.

СУБД MySQL является собственностью компании Sun Microsystems, осуществляющей разработку и поддержку приложения. Распространяется под GNU General Public License и под собственной коммерческой лицензией, на выбор. Помимо этого компания MySQL AB разрабатывает функциональность по заказу лицензионных пользователей, именно благодаря такому заказу почти в самых ранних версиях появился механизм репликации.

MySQL  является  идеальным  решением  для  малых  и  средних  приложений.  Обычно  MySQL  рассматривается  как  основа  для  не  слишком  сложных,  проектов,  не  требующих  высокой  сохранности  данных:  форумы,  системы  ведения  статистики  посещаемости  и  т.  д.  Наиболее  полно  возможности  сервера  проявляются  на  Unix-серверах.  MySQL-сервер  является  бесплатным  для  некоммерческого  использования.  MySQL  -  это  компактный  многопоточный  сервер  SQL,  широко  распространенный  в  качестве  SQL-движка  сайтов  благодаря  удачному  сочетанию  пользовательских  свойств,  открытым  исходным  кодам  и  хорошей  технической  поддержке.  Исходный  язык  MySQL  -  C, что во многом определяет его слабые и сильные стороны.  СУБД  MySQL  относится  к  числу  продуктов  экономического  класса  и  представляет  собой  неплохую  альтернативу  более  дорогим  продуктам.  Последние  версии  СУБД  поддерживают  хранимые  процедуры  и  триггеры.  В  нее  также  добавлена  поддержка  иностранных  алфавитов  и  географических  данных.  Новый  модуль  установки  на  базе  графического  пользовательского  интерфейса  и  программы-эксперты  конфигурирования  для  Linux  и  Windows  делают  более  простой  настройку  и  оптимизацию  БД.  Краткий  перечень  положительных  свойств  MySQL  включает:
  •  поддержкуивается неограниченногое количествао пользователей,  одновременно  работающих  с  базой данныхБД;
  •  количество  строк  в  таблицах  может  достигать  50  млн;
  •  быстрое  выполнение  команд;  
  •  простая  и  эффективная  система  безопасности.  

Одной  из  самых  серьезных  проблем  СУБД  MySQL  остается  неразвитость  используемого  диалекта  SQL.  Отсутствие оператора Объединение- UNION и view-представлений вынуждает реализовывать бизнес-логику системы не средствами сервера БД, а с применением внешнего по отношению к базе языка программирования Web-страниц (Perl, PHP, J2EE). MySQL  поддерживает  временные  таблицы,  локальные  для  данного  соединения  и  автоматически  удаляющиеся  при  его  закрытии,  а  также  создание  таблиц  в  оперативной  памяти.  В  более  простых  случаях,  когда  результат  выполнения  подзапроса  представляет  собой  одну  запись,  для  хранения  промежуточных  значений  можно  использовать  переменные  MySQL.  

View – представления вносят дополнительный уровень абстракции, делающий базу более гибкой, а логику - прозрачной, и очень полезны с точки зрения разделения прав доступа. В  MySQL  это создание View  представлений решается  весьма  своеобразно:  для  каждого  поставщика  заводится  отдельная  таблица,  а  общая  таблица  будет  собираться  из  них  путем  создания  таблицы  типа  Merge  -  некоей  комбинации  View  и  Union,  когда  значения  из  нескольких  идентичных  таблиц  MyISAM  объединяются  в  одну  и  этому  объединению  дается  свое  имя.  Принципиальная  проблема  при  таком  подходе  состоит  в  отсутствии  транзакций,  так  как  Merge  поддерживается  только  для  таблиц  типа  MyISAM.  

В  СУБД  MySQL  отсутствуют  средства  поддержки  внешних  ключей  foreign  keys  и  другие  средства  поддержания  целостности.  Эти  средства  повышают  качество  проектирования  базы,  но  при  создании  Web-сайтов  ошибки  необходимо  выявлять  на  том уровне, на котором возможна их обработка, а именно на внешнем по отношению к SQL уровне  языка создания страницHTML.  Максимально  возможное  количество  проверок  следует  проводить  в  браузере  на  стороне  клиента.  Таким  образом,  проверки  целостности  внутри  SQL-сервера  могут  рассматриваться  только  как  дополнительное  средство,  и  рассчитывать  на  них  при  проектировании  бизнес-логики  все  равно  нельзя.  

В  СУБД  MySQL  используется  четыре  типа  таблиц:  статические,  динамические,  heap  ("куча")  и  сжатые.  Статические  таблицы  самые  быстрые  из  трех  типов  таблиц,  размещаемых  на  дисках.  Зато  они  не  могут  содержать  столбцы  переменной  длины.  Если  в  таблице  имеется,  хотя  бы  один  такой  столбец,  СУБД  MySQL  вынуждена  создавать  динамическую  таблицу  вместо  статической.  Динамические  таблицы  содержат  гораздо  больше  данных,  особенно  касающихся  размера  таблицы,  но  значительно  медленнее  статических  таблиц.

Таблицы  типа  heap  существуют  только  в  оперативной  памяти  и  поэтому  они  исключительно  быстродействующие.  Но  таблицы  этого  типа  бывают  лишь  небольшого  или  среднего  размера.  Сжатые  таблицы  предназначены  только  для  считывания  и  тоже  очень  быстродействующие.  

Когда  данные  столбцов  переменной  длины  изменяются  и  новые  данные  имеют  более  короткую  длину,  в  информационных  файлах  MySQL  образуется  "мертвое"  пространство.  Проблема  производительности  связана  с  постепенной  деградациейи используемых  индексов.  В  программном  обеспечении  MySQL  имеется  инструментальное  средство  myisamchk,  позволяющее  высвободить  мертвое  пространство  и  оптимизировать  индексы.  Эту  программу  следует  периодически  запускать.

Шифрованные  взаимодействия  между  клиентами  и  серверами,  реализованные  посредством  использования  OpenSSL,  укрепляют  защиту  от  вторжений  и  нелегитимного  доступа.  Кроме  того,  последняя  версия  включает  в  себя  более  быстрый  протокол  взаимодействия,  поддерживающий  подготовленные  формулировки  и  обеспечивающий  оптимизацию  обработки  запросов  и  выдачу  более  информативных  предупреждений.

В  СУБД  MySQL  есть  средство  для   администрирования  сервера  WinMySQLAdmin.  Программа  отображает  сведения  о  работе  сервера,  время  работы,  переменные  среды,  список  доступных  БД  и  таблиц  (без  возможности  редактирования  или  просмотра),  а  также  позволяет  перезапускать  сервер.  На  отдельную  вкладку  вынесены  настройки  производительнстипроизводительности  и  редактирования  конфигурационного  файла  my.ini.  В  дистрибутив  входит  несколько  сборок  сервера  и  можно  выбрать  наиболее  быстродействующую.    Программа  при  закрытии  главного  окна  скрывается  в  systray,  а  наиболее  частые  операции  с  сервером  (перезагрузка/запуск/остановка)  можно  выполнить  через  контекстное  меню.  Иконка  в  виде  светофора  показывает  текущее  состояние  сервера   красный  (остановлен),  зеленый  (работает)  или  желтый  (процесс  загрузки/остановки).  

Еще  есть  утилита  MySQL  Control  Center,  которая  не  входит  в  поставку  СУБД.  Она  предназначена  тоже  для  администрирования   управления  пользователями  и  правами  доступа,  а  также  позволяет  сделать  ряд  глобальных  операций  над  сервером,  вроде  просмотра  переменных,  текущих  подключений  и  статистики  по  каждой  базе.  

Для  администрирования  и  работы  с  БД  через  Web  наиболее  популярным  инструментом  стал  набор  PHP  скриптов  PHPMyAdmin.  Для  работы  необходим  веб - сервер  с  поддержкой  PHP.   Не  все  операции  по  администрированию  сервера  можно  делать  через  веб - интерфейс.  

Утилита  MySQL  Administrator  предназначена  для  администрирования  сервера,  а  также  может  выполнять  операции  резервного  копирования  и  восстановления  информации  (как  над  отдельными,  так  и  над  всеми  базамиБД,  причем  есть  встроенный  планировщик  заданий).  Главные  функции  утилиты  представлены  ниже.

Server  Information  позволяет  можно посмотреть  на  какой  платформе  запущен  сервер,  хост/порт,  текущий  аккаунт  пользователя,  IP,  операционную системуОС,  процессор  и  размер  доступной  памяти.  Тут  же  показывается  текущий  статус  сервера   работает  или  остановлен.

Service  Control  позволяет  запустить  или  перезапустить  сервер,  просмотреть  лог  загрузки,  настроить  основные  параметры   пути  к  файлу  конфигурации,  директории  с  бинарными  файлами  и  настроить  сервер  для  поддержки  специфических  расширений [http://www.mysql.com/products/mysqlcc/index.html].  

Startup  Variables  -  этот  раздел  позволяет    настроить  множество  тонких  опций,  влияющих  на  производительность  сервера.  Кроме  базовых  настроек  (поддержка  сетевых  соединений,  настройка  портов,  пути  к  служебным  каталогам,  настройка  работы  с  памятью),  отдельно  можно  настроить  опции  для  различных  типов  таблиц  (MyISAM,  InnoDB).  Для  увеличения  производительности  есть  настройки  кеширования,  для  работы  с  несколькими  серверами  есть  настройки  репликации.  На  отдельных  вкладках  сгруппированы  настройки  безопасности  и  сетевые  возможности.  

Server  Connections.  С  помощью  этой  функции  можно  просмотреть  все  текущие  подключения  клиентов  к  серверу  и  при  необходимости  завершить  любое  из  них.  

Функция  User  Administration  позволяютпозволяет  настроить  привилегии  для  каждого  пользователя  и  оперативно  управлять  ими.  Функция  Health  позволяет отслеживаеть производительность  сервера  в  реальном  времени,  расход  памяти  и  сетевой  траффиктрафик,  а  также  показывает  статистику  по  типам  запросов  и  эффективность  задействования  ключей.  Эти  возможности  можно  использовать,  чтобы  наблюдать  изменения  в  работе  сервера  при  изменении  настроек,  тестировать  их  влияние  на  производительность  и  таким  образом  постепенно  оптимизировать  работу  сервера.  

Server  Logs  показывает  стандартные  логи  сервера   общий  лог  и  записи  об  ошибках.  Здесь  же  реализованы  функции  резервирования  и  востановлениявосстановления  БД.  Планировщик  позволяет  раздельно  резервировать  отдельные  БД  и  таблицы  (одни  БД  один  раз  в  сутки,  другие  в  конце  недели  и  т.д.).  Опции  резервирования  также  гибко  настраиваются.  

С  помощью  функции  Replication  Status  можно  настроить  параметры  репликации.  

Функция  Catalogs  дает  доступ  к  отдельным  БД  и  таблицам,  позволяет  осуществлять  операции  оптимизации,  проверки  и  восстановления  таблиц,  а  также  показывает  сведения  об  индексах  и  их  параметрах,  а  также  пользователей,  которые  имеют  доступ  к  конкретной  БД  или  таблице.  

Наиболее  эффективна  СУБД  MySQL  в  таких  приложениях,  как  CMS  (система  управления  контентом).  К  СУБД  в  таких  приложениях  ставятся  следующие  требования:  высокая  скорость  чтения,  возможность  хранения  данных  различных  типов,  работа  с  большим  количеством  таблиц  в  одной  БД,  эффективная  работа  с  запросами,  которые  одновременно  используют  множество  таблиц  для  выборки  данных,  масштабируемость,  надежность  и  устойчивость  к  большим  нагрузкам.  

При  создании  форумов  и  чатов  позиции  СУБД  MySQL  также  очень  сильны.  Форумы  и  чаты  ставят  к  СУБД  самые  высокие  требования.  Особенно  это  касается  скорости  чтения  и  записи,  работы  с  большими  таблицами,  оптимизации  запросов  к  нескольким  таблицам  одновременно,  хранения  и  обработки  больших  текстовых  массивов,  наличия  эффективного  поиска  и  возможности  предварительной  индексации  полей  с  большим  текстом.  И  поскольку  текст,  заносимый  в  БД,  может  быть  на  разных  языках,  то  СУБД  должна  уметь  эффективно  работать  с  различными  языками  и  кодировками.  

Список  наиболее  важных  характеристик  программного  обеспечения  СУБД  MySQL.

Внутренние характеристики и переносимость.

- написан на языках С и C++;

- протестирован на широком спектре различных компиляторов;

- работает на множестве различных платформ;

- для обеспечения переносимости использует инструменты GNU - Automake, Autoconf и Libtool;

-  доступны  API-интерфейсы  для  С,  C++,  Eiffel,  Java,  Perl,  PHP,  Python,  Ruby  и  Tel;

-  полностью  многопоточный  с  использованием  потоков  ядра, м. Может  работать  в  многопроцессорных  системах;

-  обеспечивает  транзакционный  и  нетранзакционный  механизмы  хранения;

-  использует  очень  быстрые  дисковые  таблицы  (MylSAM)  со  сжатием  индексов  на  основе  бинарных  деревьев  (В-деревьев);

- сравнительно простое добавление другого механизма хранения. Это удобно, если требуется добавить SQL-интерфейс к базе данных собственной разработки;

-  очень  быстрая  система  распределения  памяти,  основанная  на  потоках;

-  очень  быстрые  соединения,  использующие  оптимизированные  однопроходные  мультисоединения;

-  хранимые  в  памяти  хеш-таблицы,  которые  используются  в  качестве  временных  таблиц;

-  функции  SQL  реализованы  с  использованием  высоко  оптимизированной  библиотеки  классов  и  должны  выполняться  предельно  быстро. Как правило, какого-либо распределения памяти после инициализации запроса не выполняется;

-  код  MySQL  протестирован  с  помощью  инструментов  поиска  утечки  памяти, как коммерческих, так и с открытым исходным кодом;

-  сервер  доступен  как  отдельная  программа  для  использования  в  клиент- серверной  сетевой  среде.  Кроме  того,  он  также  поставляется  в  виде  библиотеки,  которая  может  быть  встроена  в  отдельные  автономные  приложения.  Такие  приложения  могут  применяться  в  изолированной  среде  или  среде,  не  имеющей  доступа  к  сети.

Типы  столбцов

-  множество  типов  данных  для  столбцов  таблиц:  знаковые/беззнаковые  целые  ДЛИНОЙ  в  1,  2,  3,  4  и  8  байт;  ТИПЫ  FLOAT,  DOUBLE,  CHAR,  VARCHAR,  TEXT,  BLOB,  DATE,  TIME,  DATETIME,  TIMESTAMP,  YEAR,  SET,  ENUM  и  пространственные  типы  OpenGIS;

-  записи  фиксированной  и  переменной  длины.

Операторы  и  функции.

-  полная  поддержка  операций  и  функций  в  конструкциях  SELECT  и  WHERE  запросов,  например,  mysql>  SELECT  CONCAT(first_name,  '  ',  last_name)  ->  FROM  citizen  ->  WHERE  income/dependents  >  10000  AND  age  >  30;

-  полная  поддержка  конструкций  GROUP  BY  и  ORDER  BY.  Поддержка  групповых  функций  (COUNT  (),  COUNT  (DISTINCT  .  .  .),  AVG(),  STD(),  SUM(),  MAX(),  MIN()  И  GROUP_CONCAT());

-  поддержка  LEFT  OUTER  JOIN  и  RIGHT  OUTER  JOIN  как  с  синтаксисом  SQL,  так  и  с  синтаксисом  ODBC;

-  поддержка  псевдонимов  для  таблиц  и  столбцов,  как  того  требует  стандарт  SQL;

-  операторы  DELETE,  INSERT,  REPLACE  и  UPDATE  возвращают  количество  строк,  которые  были  изменены. Вместо этого можно задать возврат количества строк, соответствующих запросу, для чего потребуется установить соответствующий флаг при подключении к серверу;

-  специфическая  для  MySQL  команда  SHOW  может  быть  использована  для  извлечения  информации  о  базах  данных,  таблицах  и  индексах.  Команда  EXPLAIN  позволяет  просмотреть,  как  оптимизатор  выполняет  запрос;

-  имена  функций  не  конфликтуют  с  именами  таблиц  и  столбцов.  Например,  ABS   абсолютно  корректное  имя  столбца.  Единственное  ограничение,  которое  накладывается  на  вызов  функций,  -  это  то,  что  между  именем  функции  и  следующей  за  ним  открывающей  скобкой  '  ('  не  должно  быть  пробелов;

-  можно  смешивать  таблицы  из  разных  баз данных БД в  одном  запросе (как в MySQL 3.22).

Безопасность. CистемаСистема,  основанная  на  паролях  и  привилегиях,  является  исключительно  гибкой  и  безопасной  и  позволяет  организовать  верификацию  средствами  хоста.  Пароли  защищены,  поскольку  весь  трафик  паролей  во  время  соединения  с  сервером  шифруется.

Масштабируемость  и  ограничения:.

-  поддерживает  работу  БД  огромных  объемов,  например,  компания  MySQL  AB  применяет  сервер  MySQL  для  обслуживания  БД,  содержащей  50  миллионов  записей  (известна  организация,  использующая  сервер  MySQL  для  обслуживания  базы  данных  из  60  000  таблиц,  которая  хранит  около  5  миллиардов  записей);

-  разрешается  иметь  до  64  индексов  на  таблицу (в версиях, предшествующих MySQL 4.1.2, допускалось до 32 индексов).  Каждый  индекс  может  содержать  от  1  до  16  столбцов  или  частей  столбцов,  максимальная  ширина  индекса  составляет  1000  байт (500 байт в версиях, предшествующих MySQL 4.1.2),  для  индекса  может  применяться  префикс  столбцов  с  типами  CHAR,  VARCHAR,  BLOB  и  TEXT.

Сетевая  связность:

-  клиенты  могут  подключаться  к  серверу  MySQL,  используя  сокеты  TCP/IP  на  любой  платформе.  В  Windows-системах  семейства  2000  или  ХР  клиенты  могут  подключаться  с  использованием  именованных  каналов,  в  системах  на  базе  UNIX  клиенты  могут  подключаться  через  файлы  сокетов  UNIX-доменов;

-  интерфейс  Connector/ODBC  позволяет  MySQL  поддерживать  клиентские  программы,  которые  используют  ODBC-соединения,  например,  для  подключения  к  серверу  MySQL  можно  использовать  MS  Access,  клиентское  программное  обеспечение  может  выполняться  под  управлением  Windows  или  UNIX,  поддерживаются  все  функции  драйвера  ODBC  и  множество  других;

-  интерфейс  Connector/JDBC  позволяет  MySQL  взаимодействовать  с  клиентскими  программами  на  Java,  в  которых  используются  JDBC-подключения.

Локализация:

-  сервер  может  выдавать  клиентам  сообщения  об  ошибках  на  разных  языках;

-  полностью  поддерживаются  несколько  кодовых  таблиц,  включая  latinl  (ISO-  8859-1),  german,  big5,  ujis  и  другие,  например,  в  именах  таблиц  и  столбцов  разрешается  применять  скандинавские  символы  наподобие  'а',  'а'  и  'б',  начиная  с  версии  MySQL  4.1,  также  обеспечивается  поддержка  Unicode;

-  все  данные  сохраняются  в  выбранной  кодировке,  все  сравнения  столбцов  с  нормальными  строками  чувствительны  к  регистру;

-  сортировка  выполняется  в  соответствии  с  выбранной  кодировкой  (по  умолчанию  используется  шведский  набор),  сервер  MySQL  поддерживает  множество  различных  кодировок,  причем  они  могут  быть  указаны  как  во  время  компиляции,  так  и  во  время  выполнения.

Клиенты  и  инструменты.  Cервер  MySQL  имеет  встроенную  поддержку  SQL-операторов  для  проверки,  оптимизации  и  восстановления  таблиц.  Эти  операторы  можно  выполнять  в  режиме  командной  строки,  используя  клиентское  приложение  mysqlcheck.  MySQL  включает  также  myisamchk  -  очень  быструю  утилиту  командной  строки  для  реализации  тех  же  операций  над  таблицами  MylSAM.

Гибкость  СУБД  MySQL  обеспечивается  поддержкой  большого  количества  типов  таблиц:  пользователи  могут  выбрать  как  таблицы  типа  MyISAM,  поддерживающие  полнотекстовый  поиск,  так  и  таблицы  InnoDB,  поддерживающие  транзакции  на  уровне  отдельных  записей.  СУБД  MySQL  поставляется  со  специальным  типом  таблиц  EXAMPLE,  демонстрирующим  принципы  создания  новых  типов  таблиц.  Благодаря  открытой  архитектуре  и  GPL-лицензированию,  в  СУБД  MySQL  постоянно  появляются  новые  типы  таблиц.

Navicat MySQL является полезным инструментом для развития и редактирования базы данных. Она работает с любой  MySQL и поддерживает большинство функции MySQL, включая триггеры, процедуры хранения, функции, события, вид, управление пользователя, и так далее. Navicat является идеальным приложением для управления БД MySQL . Кроме того, она предназначена не только для опытных разработчиков, а и для начинающих пользователей, потому что ее очень легко освоить. Имея хорошо продуманный графический интерфейс пользователя (GUI), Navicat MySQL позволяет быстро и легко создавать, организовывать доступ и обмениваться информацией в безопасный и простой способ. Пользователи Navicat MySQL могут подключаться к местным / удаленным MySQL серверам, обеспечиваемым несколькими утилитарными инструментами, такими как данные по структуре, синхронизация , импорт / экспорт, копирование и доклад с целью облегчения процесса сохранения данных.

Ключевыми  особенностями  и  характеристиками  Navicat  MySQL являются:

  •  поддержка  событий,  триггеров,  функций  хранения  изображения,  типов  данных  VARCHAR,  BIT,  BINARY  /  VARBINARY,  видов  и  форм,  настройки  последовательности  соединения,  синхронизации  данных,  опций  таблицы   просмотр,  сохранение,  событий,  резервного  копирования  и  восстановления  данных,  параметров  запроса,  управления  пользователями,  опций  соединения,  HTTP  туннеля,  просмотров  в  Query  Builder,  формирования  длины  строк  и  ширины  столбцов  в  сетке  таблицы;
  •  имеет  мощные  инструменты  управления  данными,  возможности  отправления  уведомления  электронной  почтой  для  задания  по  расписанию,  встроенную  SQL  консоль;
  •  позволяет  пользователю  в  режиме  Raw  просмотреть  фактические  значения  данных,  которые  хранятся  в  базе  данных  MySQL;
  •  обеспечение  автоматического  переподключения  к  MySQL  серверу;
  •  экспорт  записей  реестра  (.reg).

Версия СУБД MySQL 5.5 по сравнению с MySQL 5.1 для Windows может работать на 1500% быстрее при выполнении операций чтения-записи и на 500% быстрее при выполнении операций в режиме «только чтение». В Linux увеличение быстродействия составило 360 и 200% соответственно.

В  MySQL  5.5  Enterprise  Monitor  2.3  появились  новые  правила  и  диаграммы,  помогающие  дополнительно  оптимизировать  производительность  и  готовность  MySQL  Database  и  MySQL  Cluster.  Обновление  включает  новые  диаграммы  MySQL  и  InnoDB,  а  также  диаграммы  для  каждой  конкретной  операционной  среды,  которые  улучшают  визуальный  контроль  ключевых  систем  как  для  режима  мониторинга  в  реальном  времени,  так  и  для  статистического  анализа  тенденций.  MySQL  Enterprise  Backup  3.5  позволяет  организациям  осуществлять  оперативное  резервное  копирование  баз  данных  MySQL  Databases,  не  прерывая  работы  прикладных  систем,  повышает  надежность  БД  благодаря  поддержке  режимов  полного,  поэтапного  и  частичного  резервного  копирования,  а  также  восстановления  состояния  базы  данных  на  тот  или  иной  момент  времени  (Point-in-Time  recovery).  MySQL  Workbench  5.2  включает  в  себя  функции  моделирования  данных  и  SQL-разработки,  а  также  полный  набор  инструментов,  с  помощью  которых  можно  визуально  проектировать,  моделировать,  генерировать  и  администрировать  базы  данных  MySQL  Databases.

 СУБД  Sybase  

Sybase  EAServer  эффективный,  масштабируемый  и  надежный  сервер  приложений  для  корпоративных,  портальных  и  Интернет-решений,  использующих  многоуровневые  архитектуры,  поддерживает  стандарт  Java  2  Enterprise  Edition  (J2EE)™  (http://bbd.net.ru/sqlserver/002d01.shtml).

Sybase  EAServer  обеспечивает  следующие  технологии  J2EE:

  •  Enterprise  JavaBeans™  -  управляемые  сообщениями  компоненты  (JavaBeans)  и  расширенные  возможности  обеспечения  отказоустойчивости;
  •  JSP™  /Servlet  -  в  дополнение  к  созданию  динамических  HTML-страниц  поддерживается  создание  XML-документов  с  использованием  встроенных  скриптов  и  Java-поддержкой  формирования  динамической  информации;
  •  JAXP  -  программный  интерфейс  Java™  API  для  разборки  и  обработки  XML-документов;
  •  JASS  -  Java-интерфейс  для  подключаемых  модулей  безопасности,  обеспечивающих  функции  аутентификации;
  •  JMS  поддерживает  стандартный  интерфейс  Java  для  обмена  сообщениями  в  виде  промежуточного  интерфейса  (wrapper)  для  доступа  к  встроенным  сервисам  сервера  приложений;
  •  коннекторы  (JCA)  -  стандартная  технология  доступа  и  интеграции  внешних  систем;
  •  JTS  (Java  Transaction  Service)  -  служба  поддержки  распределенных  транзакций;
  •  программный  интерфейс  JDMK  API  -  обеспечивает  доступ  к  Java-приложениям  через  стандартные  средства  мониторинга  SNMP;
  •  программный  интерфейс  JDMK  API  -  доступ  к  Java-приложениям  через  стандартные  мониторинговые  системы  SNMP  (только  в  составе  Enterprise  Edition);
  •  модули  WebServer  (Web-Server  Plug-Ins)  для  Apache,  Netscape™,  iPlanet™  и  сервера  Microsoft  Internet  Information  Server,  которые  обеспечивают  эффективную  передачу  JSP  и  servlet-запросов  для  выполнения  внутри  сервера  приложений;
  •  встроенный  инсталлятор,  разработанный  для  поставщиков,  стремящихся  связать  EAServer  со  своими  продуктами,  автоматически  инсталлирует  и  конфигурирует  сервер,  а  также  позволяет  осуществлять  установку  компонентов  при  помощи  командной  строки;
  •  автоматическое  восстановление  работоспособности  -  EAServer  использует  автоматическую  синхронизацию  по  памяти  stateless-  и  stateful-компонентов  для  автоматического  восстановления  экземпляра  компонента  в  случае  сбоя  на  другом  сервере (имеется только в составе Enterprise Edition);
  •  репозиторий  контроля  версий  -  работа  данного  компонента  гарантирует  то,  что  все  системы  имеют  одинаковые  версии  программного  обеспечения;  
  •  межплатформенная  кластеризация  -  Sybase  EAServer  полностью  обеспечивает  кластеризацию  и  синхронизацию  компонентов  на  базе  всех  поддерживаемых  ОС  в  любой  точке  сети;
  •  настройка  производительности  может  осуществляеться  также  с  помощью  кэширования  объектов  и  страниц;
  •  поддержка  Hotspot  VM  -  JDK  включает  поддержку  Hotspot  VM,  улучшающую  управление  памятью  за  счет  более  эффективного  сбора  "мусора"  в  памяти  и  повышения  производительности  в  случае  большого  количества  CPU-интенсивных  приложений.  

Sybase  EAServer  поддерживает  широкий  спектр  совместно  используемых  компонентных  моделей,  включая  CORBA®/IIOP,  ActiveX®  /COM,  Enterprise  JavaBeans™,  Java®  Servlets  и  PowerBuilder®  NVO;  большинство  языков  программирования  и  инструментальных  средств,  включая  Java™,C/C++,  Visual  Basic®  и  PowerBuilder,  и  может  функционировать  на  базе  подавляющего  большинства  ОС,  включая  Microsoft®  Windows,  Sun®  Solaris™,  HP-UX®  IBM  AIX®,  а  также  Red  Hat®  Linux.

Многозадачное  ядро,  поддерживающее  работу  в  многопроцессорных  SMP-системах,  интеллектуальный  кэш  соединений  к  БД,  а  также  технологии  построения  кластерных  систем  с  поддержкой  автоматического  восстановления  работоспособности  системы  и  балансировки  нагрузки  обеспечивают  эффективную  работу  даже  самых  сложных  корпоративных  приложений.

Sybase  EAServer  поддерживает  наращиваемую  систему  безопасности  на  базе  дополнительных  модулей  (plug-in),  которые  обеспечивают  аутентификацию,  авторизацию  и  определение  ролевой  принадлежности  работающего  пользователя.  Обеспечивается  поддержка  встроенных  в  ОС  систем  аутентификации  и  авторизации,  цифровых  сертификатов  x.509,  а  также  других  механизмов  безопасности.  EAServer  поддерживает  также  автоматическое  HTTP-туннелирование,  и  поддержку  протокола  SSL  для  шифрования  данных.  В  рамках  ролевой  модели  авторизации  доступа  обеспечивается  присвоение  ролевой  принадлежности  пользовательским  учетным  записям,  и  определение  прав  доступа  к  отдельным  серверным  ресурсам.  

Sybase  EAServer  поддерживает  упреждающее  асинхронное  чтение,  что  повышает  скорость  выполнения  сложных  запросов,  создание  кластеров,  распределенную  обработку  запросов,  в  том  числе  к  базам данных БД других  производителей,  расширенные  хранимые  процедуры,  позволяющие  осуществить  легкий  доступ  к  не-SQL-функциям  (Java,  3GL-системы,  функции  операционной системы ОС и  т.д.),  параллельную  обработку  запросов  в  многопроцессорных  системах,  параллельную  работу  утилит  администрирования,  динамическую  конфигурацию  сервера  и  резервное  копирование  данных  с  компрессией,  поддержку  XML-запросов.

Из  универсальных  механизмов  доступа  к  данным  поддерживаются  драйверы  ODBC,  JDBC,  OLE  DB/ADO.  Пользователи  средств  разработки  Borland  для  работы  с  этим  сервером  могут  также  использовать  механизм  доступа  к  данным  dbExpress.

Для  создания  многомерных  хранилищ  данных  у  Sybase  существует  серверный  продукт   Adaptive  Server  IQ,  позволяющий  создавать  хранилища  на  основе  данных  из  СУБД  не  только  производства  Sybase,  но  и  других  производителей.  

Существует  ряд  продуктов  под  общим  названием  Sybase  Industry  Warehouse  Studio,  ориентированных  на  обслуживание  конкретных  предметных  областей:  торговли  (Retail  Warehouse  Studio),  здравоохранения  (Healthcare  Warehouse  Studio),  страхования  (Life  Insurance  Warehouse  Studio)  и  др.

Варианты  поставки  Sybase  EAServer:

  •  Enterprise  Edition  -  решение  для  крупных  организаций,  испытывающих  потребность  в  надежной  обработке  транзакций  и  широких  функциональных  возможностях;  
  •  Advanced  Edition  -  эта  версия  поддерживает  неограниченное  количество  соединений,  кластеризацию  и  обеспечивает  масштабируемость,  позволяя  достигать  высокой  производительности  (версия  не  обеспечивает  двухфазное  подтверждение  транзакций  и  автоматическую  отказоустойчивость);
  •  Small  Business  Edition  -  версия  предназначена  для  поддержки  интернет-приложений.  Максимальное  число  допустимых  IIOP/CORBA  соединений   десять,  подходит  для  организаций,  системы  которых  не  нуждаются  в  кластеризации,  поддержке  работы  с  мейнфреймами,  двухфазного  подтверждения  транзакций  и  автоматической  отказоустойчивости;
  •  Developer  Edition  -  вариант  для  разработчиков,  занимающихся  созданием  и  тестированием  приложений  с  использованием  сервера  Sybase  EAServer,  является  полнофункциональной,  но  ограничена пятью  IIOP-соединениями.  

Sybase  EAServer  обеспечивает  целый  ряд  важных  преимуществ,  включая:

  •  надежную  работу  системы  за  счет  обеспечения  автоматического  восстановления  работоспособности  на  уровне  серверной  памяти,  балансировки  нагрузки,  а  также  кластеризации;
  •  защиту  инвестиций  за  счет  интеграции  с  существующими  внутренними  системами;  
  •  упрощенное  управление  за  счет  комплексной  настройки  и  возможностей  администрирования,  таких  как  кэширование  экземпляров  компонент,  управление  транзакциями,  кэширование  процессов  и  графическая  настройка  параметров  компонент.  

 СУБД  DB2

СУБД  фирмы  IBM DB2,  впервые  появилось  в  начале  восьмидесятых  годов.  Сейчас  версии  этого  продукта, функционируют  под  управлением  ОС  AS/400AIX,  S/390,  Windows,  OS/2,  AIX,  HP-UX,  SCO  UnixWare,  Linux,  NUMA-Q  и  Sun  Solaris.

СУБД  DB2  Enterprise  Server  Edition  поставляется  с  богатым  набором  инструментов  для  администрирования.  Из Ммеханизмыов доступа  к  данным  DB2  поддерживают  драйверы  ODBC,  JDBC  и  ADO/OLE  DB,  а  для  пользователей  Microsoft  Visual  Studio  доступны  включаемые  в  среду  дополнительные  модули,  такие  как  Stored  Procedure  Builder.  Windows-версии  СУБД  DB2  позволяют  также  создавать  хранимые  процедуры  на  языке  Visual  Basic.  CредстваСредства  разработки  Borland  поддерживают  доступ  к  DB2  не  только  с  помощью  ADO/OLE  DB  и  ODBC,  но  и  посредством  собственных  универсальных  механизмов  доступа  к  данным   Borland  Database  Engine  и  dbExpress.

СУБД  DB2  поддерживает  создание  хранилищ  данных  и,  помимо  средств  переноса  данных  в  хранилище  содержит  в  составе  клиентской  части  Data  Warehouse  Center,  позволяющий  управлять  всеми  процессами,  связанными  с  созданием  и  поддержкой  хранилищ  данных,  включая  создание  схемы  хранилища,  определение  источников  исходных  данных  для  него,  создание  расписаний  обновления  данных  в  хранилище,  проверку  и  исправление  некорректных  данных.  Для  поддержки  OLAP-хранилищ  в  состав  сервера  DB2  Universal  Database  входит  OLAP  Starter  Kit,  основанный  на  OLAP-сервере  Hyperion  Essbase.

СУБД  DB2  поддерживает  хранение  и  поиск  XML-документов  по  их  элементам  и  атрибутам.  С  помощью  протокола  SOAP  можно  обращаться