Работа с таблицами в СУБД Access

Основы работы с таблицами Access
Теоретически в базе данных можно создать и сохранить до 32768 таблиц.
Можно одновременно открыть до 1024 окон таблиц.
Каждая таблица может содержать до 255 полей.
Размер таблицы ограничен только общим размером базы данных (2 Гбайт).
При планировании базы данных ее следует разделить на логические единицы (сущности), которые в дальнейшем можно связать. Для каждой логической единицы базы данных следует создать отдельную таблицу. Все сведения о сущности (атрибуты сущности), которые сохраняются в таблице, образуют запись, которая определяется заданными для всей таблицы полями (столбцами).
Сведения о сущности детализируются так, чтобы к ним обеспечить доступ, т.е. каждый атрибут нужно сохранять в отдельном поле таблицы.
Каждому полю назначается определенный тип данных.
Структуру новой таблицы следует спланировать и продумать до такой степени, чтобы в дальнейшем не возникало необходимости ее изменения. Кроме того, можно оптимизировать существующие базы данных с помощью мастера анализа таблиц. При выполнении этой операции мастер внесет предложения по разделению таблиц.

Для создания новой таблицы нужно:
  1. Открыть нужную базу данных (либо проект) или создать новую (см. практикум 3.5.1).
  2. В окне базы данных перейти на вкладку Таблицы.
  3. Нажать кнопку Создать. На экране будет открыто окно диалога Новая таблица. В этом окне:
    • при выборе элемента Режим таблицы на экране будет открыта новая таблица и можно приступить к вводу данных. Имена полей и типы данных можно определить в дальнейшем;
    • при выборе элемента Конструктор откроется окно таблицы в режиме конструктора, в котором можно определить макет таблицы;
    • при выборе элемента Мастер таблиц, можно приступить к созданию таблиц на основе образцов таблиц и полей;
    • при выборе элементов Импорт таблиц и Связь с таблицами можно импортировать таблицы и создавать таблицы, связанные с таблицами внешнего файла БД.
  4. Определить структуру таблицы (как правило, в режиме конструктора). Для этого указать имена полей и тип данных, а также при необходимости — описание и свойства полей. При определении имен полей и имени таблицы действуют общие правила MS Access для имен объектов:
    • имя объекта может иметь длину до 64 символов и включать в себя буквы, цифры, символы пробела и специальные символы. Нельзя использовать в имени объекта точку, восклицательный знак, надстрочный символ (`) и прямые скобки ([]);
    • имена объектов не могут начинаться символом пробела и содержать управляющие символы (с кодами ASCII от 0 до 31).
  5. Сохранить структуру таблицы, закрыв ее окно. Предварительно присвоенное приложением имя таблицы можно заменить новым, указывающим на логическую единицу (сущность).
При сохранении таблицы, в которой не определены ключевые поля, программа выведет на экран запрос, нужно ли определить ключевые поля автоматически.
В случае положительного ответа MS Access в макете таблицы в качестве первого поля добавит поле с именем Код и типом данных Счетчик.
Если в макете определено поле с типом данных Счетчик, то MS Access использует его в качестве ключевого поля.
Ключевое поле служит для идентификации записей таблицы.
Определять ключевое поле необязательно, однако целесообразно.
Если ключевые поля определены, то считывание данных будет значительно ускорено, особенно в тех случаях, если нужные данные сохранены в различных таблицах.
Ключевое поле необходимо при создании связей между таблицами.
При отображении данных, происходящих из различных таблиц, те могут быть обработаны только в том случае, если соответствующие таблицы связаны с помощью ключевых полей.
Содержимое ключевого поля для каждой записи должно быть уникальным.
Если поле с уникальными данными в таблице отсутствует, то в качестве ключа можно определить два или несколько полей. Комбинация этих полей, однако, должна содержать только уникальные данные.
Нужно стремиться к определению минимального из возможных ключей, поскольку размер ключа (количество и типы полей, входящих в составной ключ) влияет на скорость выполнения операций программой.
Если ввод данных приводит к повторяющимся значениям в ключевом поле, то на экран будет выведено сообщение об ошибке.
Если макет таблицы содержит поле с уникальными данными для каждой записи, то это поле можно определить в качестве ключевого поля.
MS Access автоматически создает для ключевых полей индекс.
Таблица в режиме конструктора
В режиме конструктора можно определить макет новой таблицы или изменить тип данных и формат полей существующей таблицы.
Задать отображение таблицы в режиме конструктора можно несколькими способами.
  1. Выделить таблицу, макет которой необходимо изменить, в окне базы данных.
  2. Нажать кнопку Конструктор или выбрать из контекстного меню таблицы команду Конструктор.
  3. При работе с таблицей в режиме таблицы для перехода в режим конструктора выбрать команду Вид ==> Конструктор или выбрать из меню, открываемого нажатием кнопки Вид, командуКонструктор.

В режиме конструктора окно таблицы разделено на две части:
  • верхняя часть служит для определения имен полей, типа данных и (при необходимости) описания полей. Тем самым в каждой строке можно определить одно поле;
  • нижняя часть окна в режиме конструктора служит для определения свойств полей. Кроме того, рядом с полями свойств (справа) отображается поле с подсказкой по вводу данных в текущее поле.
На левом крае окна располагается дополнительный столбец (область выделения строк), в котором могут отображаться отдельные значки:
  • стрелка, указывающая вправо, обозначает текущую строку (маркер текущей строки);
  • значок с изображением ключа отмечает ключевое поле (маркер ключевого поля);
  • при помещении указателя мыши в этом столбце перед именем поля тот примет форму толстой горизонтальной стрелки. Щелчок левой кнопкой мыши приведет к выделению всей строки;
  • удерживая нажатой клавишу Ctrl при выполнении щелчка в области выделения строк, можно выделить несколько несмежных строк;
  • для выделения нескольких смежных строк нужно протащить указатель при нажатой кнопке мыши в области выделения строк;
  • щелчок на кнопке, располагающейся на пересечении области выделения строк и области заголовков столбцов, приведет к выделению всего макета. В качестве альтернативы для выделения всего макета можно выбрать команду Правка ==> Выделить все или нажать сочетание клавиш Ctrl + A;
  • при помещении указателя мыши в области выделения строк на нижней границе строки тот примет форму двунаправленной стрелки. Протащив указатель мыши при нажатой левой кнопке в этом режиме, можно изменить высоту строки;
  • новая высота строки будет установлена для всех строк верхней части окна. Выполнив команду Правка ==> Восстановить высоту строки, нажав сочетание Ctrl + Z или же соответствующую кнопку на панели инструментов, можно отменить изменение высоты строки.
Типы данных полей
Каждому полю таблицы следует назначить определенный тип данных. Для каждого типа данных устанавливаются свойства. Выбор типа данных определяет, сколько места на жестком диске программа резервирует для каждого поля.
Если таблица уже содержит данные и в режиме конструктора изменить тип данных, то MS Access попытается преобразовать данные в новый тип. При этом:
  • содержимое поля, которое нельзя преобразовать, будет удалено. В случае индексированного поля MS Access удалит всю запись;
  • перед удалением данных программа выведет на экран соответствующее сообщение (можно прервать выполнение операции);
  • при изменении типа данных поля, с помощью которого установлена связь с другими таблицами, эта связь будет удалена (по запросу) и при необходимости ее следует установить заново;
  • выбранный тип данных нельзя в дальнейшем преобразовать в тип данных СЧЕТЧИК.
Тип данных ТЕКСТОВЫЙ
При выборе типа ТЕКСТОВЫЙ в поле можно вводить любые данные (до 255 символов). Вводимые числовые значения в этом случае будут интерпретированы программой в качестве текста и их нельзя применять в вычислениях.
Тип данных ПОЛЕ MEMO
Поля MEMO используются для хранения длинного текста (до 65535 символов). Для перехода к новой строке в таком поле следует нажать сочетание клавиш Ctrl + Enter.
Тип данных ЧИСЛОВОЙ
Эти поля предназначены для ввода числовых значений. Введенные числовые значения можно использовать в вычислениях.
Для свойства Размер поля нужно выбрать из списка одно из предлагаемых программой значений (см. табл.).
Значение
Описание
Точность (разрядов после точки)
Занимает в памяти (байт)
Байт (Byte)
Числа от 0 to 255
Нет
1
Действительное (Decimal)
Числа от — 1038-1 до 1038-1 для проектов (.adp)
Числа от — 1028-1 до 1028-1 для баз данных (.mdb)
28
12
Целое (Integer)
Числа от — 32 768 до 32 767
Нет
2
Длинное целое (Long Integer) (По умолчанию)
Числа от — 2 147 483 648 до 2 147 483 647
Нет
4
Одинарное с плавающей точкой (Single)
Числа от -3.402823E38 до — 1.401298E-45 для отрицательных значений и от 1.401298E-45 до 3.402823E38 для положительных значений
7
4
Двойное с плавающей точкой (Double)
Числа от -1.79769313486231E308 до -4.94065645841247E-324 для отрицательных значений и от 4.94065645841247E-324 до 1.79769313486231E308 для положительных значений
15
8
Код репликации (Replication ID)
Хранит уникальный идентификатор для идентификации реплик, групп реплик, таблиц, записей и других объектов
Не определена
16
При определении размера поля для различных типов нужно стремиться к минимальному, но достаточному для хранения данных типу.
Тип данных ДАТА/ВРЕМЯ
Этот тип данных предназначен для хранения значения даты и времени, относящиеся к годам от 100 до 9999 включительно. В поле для свойства «Формат поля» путем выбора из списка можно определить формат значений даты и времени.
Тип данных ДЕНЕЖНЫЙ
Это поле используется для хранения денежных значений. Вычисления выполняются с точностью до 15 знаков в целой и 4 знаков в дробной части. Для денежных значений не следует использовать тип данных ЧИСЛОВОЙ, поскольку в этом случае значения будут округлены. При вычислениях с использованием этого типа данных применяется метод с фиксированной точкой (запятой).
Тип данных СЧЕТЧИК
В поле с этим типом данных осуществляется автоматическая нумерация записей. Нумерация начинается с числа 1, если запись с этим номером ни разу не удалялась. Данные, хранящиеся в поле счетчика, изменить нельзя. Путем выбора одного из элементов списка определяется значение свойств Размер поля — Длинное целое или Код репликации.
Тип данных ЛОГИЧЕСКИЙ
Эти поля могут содержать одно из двух возможных значений (True/False, Да/Нет, Вкл/Выкл), отображение которых можно выбрать из списка в свойстве Формат поля.
Тип данных ПОЛЕ ОБЪЕКТА OLE
Поле этого типа может содержать объекты, созданные с помощью приложения, поддерживающего технологию OLE. Размер OLE-объекта ограничен только максимальным размером базы данных (2 Гбайта). Поле этого типа нельзя индексировать.
Тип данных ГИПЕРССЫЛКА
Этот тип данных состоит из текста или комбинации текста и цифр, являющихся адресом гиперссылки. Адрес гиперссылки может состоять максимум из трех частей, при этом каждая часть может иметь длину до 2048 символов. Частями адреса гиперссылки являются текст, адрес и дополнительный адрес.
Тип данных МАСТЕР ПОДСТАНОВОК
Сохранение в поле значений из списка или другой таблицы (запроса). При выборе этого типа поля программа запустит мастера подстановок, с помощью которого следует определить происхождение данных. Результат работы мастера подстановок можно увидеть на вкладке Подстановка в разделе свойств поля таблицы. Можно сформировать подстановку значений на вкладке Подстановка.
При создании поля со списком подстановок можно определить тип источника данных: список постоянных значений, список полей или таблица (запрос). Если столбец подстановок содержит список постоянных значений, то при создании поля со списком подстановок в окне мастера подстановок следует указать нужные значения (список можно ввести в поле Источник строк вкладкиПодстановка, разделив значения знаком «;»). Для использования в столбце подстановок списка значений из определенного поля таблицы нужно выбрать соответствующую таблицу в окне мастера подстановок.
Таблица в режиме таблицы
Из окна базы данных можно открыть таблицу в режиме таблицы.
Вводить и изменять данные в таблице можно в режиме таблицы.
В режиме таблицы отдельные записи располагаются одна под другой по строкам, а поля отображаются одно рядом с другим по столбцам. Если таблица открыта, то с помощью кнопки Вид панели инструментов можно быстро переключаться между режимами конструктора и таблицы. Для переключения между режимами можно использовать также соответствующие команды меню Вид или контекстное меню. Если в макет таблицы внесены изменения, то при переключении в режим таблицы программа попросит задать сохранение таблицы.
В режиме таблицы можно задать различные параметры форматирования таблицы.
Как и в режиме конструктора, в режиме таблицы отображаются маркеры выделения записи. Текущая запись обозначается символом треугольной стрелки. Первая пустая запись таблицы обозначена символом звездочки. Если в таблице автоматически создан ключ, то в этом поле отображается значение (Счетчик). Ввести значение в это поле нельзя. Номер текущей записи отображен в левом нижнем углу окна таблицы (область кнопок перехода по записям). Здесь же указано общее число записей в таблице, а также отображены кнопки для перехода между отдельными записями. Если для таблицы определена подтаблица (автоматически в результате задания связи с другими таблицами или вручную в окне свойств таблицы), то слева от столбца первого поля расположен столбец индикаторов развертывания. Для каждой записи такой индикатор представляет собой кнопку со значком «+» или «-». Щелчок на индикаторе меняет значок и разворачивает/сворачивает подтаблицу, определенную для данной таблицы. В отображаемой подтаблице показаны записи, имеющие отношение к данной записи основной таблицы.
По умолчанию в качестве подтаблицы MS Access автоматически определяет таблицу, связанную с данной отношением «один-к-одному» или «один-ко-многим» (причем данная таблица является единственной и выступает со стороны «один»). Если с таблицей связано несколько подтаблиц (как «один-ко-многим»), то MS Access выводит специальное диалоговое окно для выбора подлежащей отображению подтаблицы. Подтаблица может в свою очередь иметь собственные подтаблицы (максимальный уровень вложения равен 8). Подтаблицы и подзапросы для таблиц допустимы только в базах данных, но не в MS Access-проектах.
Перемещения в таблице
В режиме таблицы наряду с клавишами, используемыми для управления курсором, для перемещения можно применять также специальные функции программы. Щелчок на кнопке со стрелкой в виде треугольника позволяет перейти к предыдущей (следующей) записи в таблице.
Для перехода к первой (последней) записи таблицы щелкните на кнопке со стрелкой и вертикальной чертой. Щелчок на кнопке со стрелкой и звездочкой приведет к переходу в конец таблицы для ввода новой записи. При переходе к записи MS Access выделяет текущее поле этой записи.

Перейти от одной записи к другой можно также с помощью меню Правка ==> Перейти. После выбора этой команды на экране будет открыто подменю, содержащее команды для перехода между отдельными записями таблицы. Выбрав команду Новая запись, можно перейти к новой записи в таблице и приступить к вводу данных.
Щелкнув в поле номера записи, расположенном между кнопками в левой нижней части окна таблицы, можно указать номер нужной записи и задать быстрый переход к ней. Для активизации поля номера записи с помощью клавиатуры нажать клавишу F5. Если в поле номера записи будет указан недействительный номер записи, то программа выведет на экран соответствующее сообщение об ошибке.
Направление смещения курсора после нажатия клавиши Enter можно определить на вкладке Клавиатура окна диалога Параметры. Здесь же можно установить значение параметра, определяющего переход курсора при нажатии клавиш Стрелка влево и Стрелка вправо к следующему символу или к следующему полю. С помощью параметра Останов на первом/последнем поле определяется разрешить ли перевод курсора к предыдущей (следующей) записи при достижении первого (последнего) поля текущей записи.

Если вся таблица в силу ее размера не может быть полностью отображена в окне, то «пролистать» таблицу поэкранно вверх и вниз можно с помощью клавиш PageUp и PageDown. Для смещения видимой части таблицы на один экран вправо или влево используйте сочетания клавиш Ctrl + PageDown и Ctrl + PageUp.
Для ввода и изменения данных целесообразно использовать форму, в которой отображается только одна запись. Расположение полей в форме определяется пользователем.
В форме программа предоставляет в распоряжение пользователя некоторые другие функциональные возможности ввода и редактирования данных, недоступные в режиме таблицы.
С помощью кнопки Новый объект панели инструментов из окна таблицы можно быстро задать создание новой формы.
При работе с формой можно быстро перейти в режим таблицы.
Внешний вид таблицы можно изменить, задавая следующие свойства:
  • формат шрифта;
  • параметры отображения полей;
  • высота строк;
  • ширина столбцов;
  • отображение и скрытие столбцов;
  • закрепление столбцов;
  • перемещение столбцов.
Выбранный вид и цвет шрифта действительны для всей таблицы независимо от текущей позиции курсора. Выбор цвета шрифта не распространяется на имена полей. Влияние заданных параметров шрифта на вид текста можно проконтролировать в поле Образец окна диалога Шрифт. В зависимости от выбранного вида шрифта можно применить различные параметры начертания и значения размера шрифта. При увеличении размера шрифта MS Access автоматически изменит высоту строк. Предпосылкой автоматического изменения высоты строки является установленный флажок параметра Стандартная в окне диалога Высота строки (для открытия этого окна диалога выбрать команду Формат ==> Высота.
Изменение ширины столбца влияет только на ширину текущего столбца или же нескольких выделенных столбцов.
Внесенные изменения в имена полей отображаются также в режиме конструктора таблицы.
Скрытый в режиме таблицы столбец отображается в форме. Задать его сокрытие в форме можно только путем изменения свойств. Команды КопироватьВставитьНайти и Заменить меню Правканельзя применять к полям скрытых столбцов. Скрытые в таблице поля можно использовать в запросе. Скрытые поля не выводятся на печать.
Закрепляют столбцы для того, чтобы они были всегда отображены на экране в левой части окна при горизонтальной прокрутке таблицы.
Порядок расположения столбцов таблицы определяется порядком определения полей в макете таблицы в режиме конструктора. В режиме таблицы порядок расположения столбцов в любой момент можно изменить.
При экспорте данных из MS Access в другое Office-приложение с помощью буфера обмена или механизма Drag & Drop параметры форматирования символов и полей будут сохранены.
Дополнительные возможности по работе с таблицами
Файл БД MS Access может работать с данными, хранящимися в других файлах. Для этого в СУБД предусмотрены механизмы связывания с таблицами и импорта данных. При связывании с внешней таблицей та сохраняется в исходном формате, однако ее можно использовать как таблицу MS Access.
В MS Access можно установить связь с таблицами, сохраненными в следующих форматах:
  • Tаблицы Access из других баз данных (*.mdb, *.mde, *.mda);
  • dBase III, III+, IV, 5 и 7 (*.dbf);
  • Microsoft Excel (*.xls);
  • Microsoft Exchange;
  • Microsoft Outlook;
  • HTML-файлы (*.htm, *.html);
  • Paradox и Paradox for Windows 3.x, 4.x, 5.0 и 8.0 (*.db);
  • Текстовые файлы с разделительными символами или фиксированной длиной записей (*.txt, *.csv, *.tab, *.asc);
  • Базы данных ODBC;
  • Lotus 1 — 2-3 (только по чтению);
  • Microsoft FoxPro 2.x, 3.0 и 5.0;
  • Базы данных SQL.
Соответствующие драйверы устанавливаются программой установки MS Office 2003.
При связывании с таблицами некоторых форматов баз данных нужно учитывать следующие особенности:
  • установив связи с внешними таблицами, можно тем самым увеличить размер базы данных MS Access, который будет ограничен только доступным на диске свободным пространством;
  • данные связанной таблицы можно изменять в MS Access обычным образом. На их основе можно создавать запросы, формы и отчеты. Однако изменить макет таблицы можно лишь частично;
  • связанные таблицы отображаются в окне базы данных со значком в форме стрелки и пиктограммой принадлежности к источнику данных. Удаление значка приведет к разрыву связи с внешней таблицей, но не к удалению самой таблицы;
  • имя таблицы соответствует имени файла в исходном приложении или же имени таблицы или листа в случае таблицы MS Access и MS Excel. В окне базы данных можно переименовать ярлык связанной таблицы;
  • при связывании двух (и более) таблиц из одной базы данных связи, существующие между ними, будут корректно учтены;
  • для защищенных паролем таблиц при связывании MS Access потребует указать пароль. MS Access сохраняет пароль в базе данных, в силу чего его не нужно указывать каждый раз. В случае SQL-таблиц пользователь сам может определить, следует ли сохранять пароль или нет. Поскольку каждый пользователь имеет доступ к защищенным паролем таблицам после связывания, то при необходимости следует установить разрешения для отдельных пользователей или задать пароль защиты базы данных.

Если сохраненная в MS Access информация о связи больше не соответствует действительности (связанный файл был, например, перемещен на жестком диске или переименован), то MS Access не сможет открыть таблицу. Для восстановления связи в MS Access предусмотрена процедура обновления связей, реализуемая в окне диалогаДиспетчер связанных таблиц, которое можно вызвать, выполнив команды меню Сервис ==> Служебные программы ==> Диспетчер связанных таблиц.
Если внешнюю таблицу планируется использовать только в MS Access, то ее можно импортировать. Дополнительно можно импортировать основные объекты базы данных и данные из электронных таблиц и текстовых файлов, которые сохранены в определенном формате. Кроме того, программа предоставляет возможность импортировать за один раз все объекты другой базы данных MS Access в текущую базу данных. При импорте таблицы формата MS Access в окне диалога Импорт объектов дополнительно можно определить, следует ли импортировать только структуру таблицы или же структуру и данные.
При работе с импортированной таблицей в распоряжении пользователя имеется практически весь инструментарий MS Access. MS Access работает с собственными таблицами быстрее, чем со связанными или импортированными.

Комментариев нет:

Отправить комментарий