Понятие объекта в базах данных
Объектами баз данных (БД) называют их структурные составляющие, такие как таблицы, отчеты, триггеры, ограничения и т.п. Они выполняют различные функции по хранению и обработке информации.
Трактовки понятия "объект" могут отличаться в зависимости от конкретной реализации СУБД (Системы Управления Базами Данных) и не всегда совпадают. Могут различаться и реализации объектов одного и того же типа в различных БД. Например, функции SQL Server, MySQL и PostrgeSQL несовместимы между собой, а в "легковесных" БД, таких, как SQLite, могу быть не реализованы вовсе.
Существуют объектно-ориентированные базы данных, в которых объекты являются не только структурными единицами БД, но и единицами хранения. Кроме того, в некоторых БД (например, класса NoSQL), понятие объекта практически не используется. В данной статье рассматриваются объекты реляционных баз данных как их структурные единицы.
В реляционных базах данных объекты (TABLE, VIEW, FUNCTION и т.д.) создаются, редактируются и уничтожаются с помощью инструкций на языке SQL, например:
CREATE TABLE Persons (
PersonID int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
);
CREATE VIEW [Brazil Customers] AS
SELECT CustomerName, ContactName
FROM Customers
WHERE Country = "Brazil";
ALTER TABLE Persons ADD COLUMN Phone varchar(255);
DROP TABLE Persons;
Рассмотрим объекты БД на примере СУБД Microsoft Access, ориентированной на пользователей, не обладающим специальными знаниями по программированию.
Объекты в Microsoft Access
Офисная СУБД Access содержит в себе типы объектов, частично совпадающие с реализациями, предлагаемыми общепринятыми стандартами SQL (таблицы, запросы), но, в то же время, обладающие существенными отличиями:
- они являются не просто структурными единицами БД, но и привязаны к определенному пользовательскому интерфейсу (внешнему виду);
- их можно создавать не только с помощью SQL-запросов, но и визуальными средствами;
- такие объекты, как формы, модули, макросы, страницы доступа к данным свойственны только для данной СУБД;
- объекты Access могут быть объединены в группы (например, таблица и связанные с ней формы и отчеты).
Рассмотрим основные типы объектов Microsoft Access.
Рисунок 1. Панель объектов Microsoft Access (слева). Автор24 — интернет-биржа студенческих работ
Таблица - структура для хранения информации в форме строк (записей), упорядоченных в форме полей (колонок, столбцов). Идентификация строк производится по уникальному ключу. Это одно или несколько полей, однозначно характеризующих строку. Таблицы Access обладают всеми характеристиками, присущими классическим реляционным БД.
Запрос - структура, хранящая в себе критерии отбора строк из таблиц. Существуют также запросы, позволяющие добавлять, изменять, удалять данные, а также объекты БД. Запросы в Access могут быть записаны на языке SQL, что роднит данную СУБД с другими реализациями реляционных БД.
Форма - пользовательский интерфейс, предназначенный для изменения (выбора, добавления, редактирования, удаления) данных в наглядном виде. Формы содержат текстовые поля, кнопки, списки, календари и др. удобные элементы управления. Как правило, формы связаны с таблицами или запросами, являющимися источниками данных для форм.
Отчет - вывод информации в удобном для печати на принтере и/или пользовательского анализа виде. От форм их отличает то, что они не содержат возможностей для изменения данных.
Модуль - небольшая программа для выполнения специфических пользовательских задач. Как правило, модули пишутся в случаях, когда средств языка SQL оказывается недостаточно для решения задач. Для создания модулей используется язык программирования Visual Basic for Applications (VBA).
В различных версиях Access могут присутствовать и другие специфические типы объектов, такие как макросы, страницы веб-доступа.
Одной из особенностей Access является то, что все объекты хранятся в едином файле с расширением .mdb. Это упрощает копирование с компьютера на компьютер. С другой стороны, в этой СУБД предусмотрены удобные механизмы импорта, позволяющие переносить объекты из одной БД в другую. Кроме того, существуют готовые шаблоны с предустановленными таблицами, формами, отчетами, предназначенными для решения определенных пользовательских задач (ведения складского, кадрового, финансового учета и т.п.).
Средства для работы с объектами Access
Рассматриваемая СУБД Access предоставляет пользователям, не располагающим глубокими знаниями в программировании, решать широкий круг задач по формированию баз данных.
Создание БД производится с помощью конструкторов или визардов. Таблицы можно также создавать в непосредственном режиме: во вновь созданную таблицу можно сразу же заносить данные, заполняя строки и формируя поля (колонки) по мере необходимости.
С помощью конструкторов можно редактировать объекты БД Access. При создании макетов используются соответствующие панели управления. С их помощью необходимые элементы (текстовые поля, метки, списки, кнопки и т.п.) переносятся в визуальное пространство формы или отчета. Параметры элементов (внешний вид, поведение) также редактируются в визуальном режиме, причем выполняемые элементами форм действия (например, при нажатии на кнопку) можно программировать не прибегая к сложному синтаксису, а просто выбирая из списка такие фразы, как "Открыть форму", "Перейти к следующей записи", "Установить значение" и т.п.
Рисунок 2. Конструктор формы. Автор24 — интернет-биржа студенческих работ
В Microsoft Access для создания объектов БД имеется множество мастеров (визардов). Задействовав один из них и заполнив последовательно появляющиеся формы, пользователь может выбрать внешний вид объекта, добавить источник записей и необходимые поля (для форм и отчетов), задать типы полей и ключевые поля (для таблиц).
Рисунок 3. Создание формы в режиме визарда. Автор24 — интернет-биржа студенческих работ
Несмотря на то, что визарды позволяют указать лишь самые базовые параметры создаваемых объектов, они существенно экономят время и силы. Объекты, созданные с помощью визардов, остается лишь отредактировать, дооснастив необходимыми возможностями в режиме конструктора.