Access

СОДЕРЖАНИЕ 
 
 
 
 
 

  
  1. Введение.
  2. Access - что это такое.

      1. Несколько слов о ...

      2. Таблицы.

      3. Запросы.

      4. Формуляры.

      5. Отчеты.

      6. Макросы.

      7. Модули.

  1. Построение небольшой Базы данных.
  2. Небольшая сравнительная характеристика.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

       1. ВВЕДЕНИЕ. 

       Перед тем как приступить к изучению СУБД ACCESS рассмотрим несколько основных понятий.

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

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

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

       Поле - основной и минимальный элемент данных.

       Запись - несколько полей.

       Связи - логические взаимосвязи между записями или полями.

       Иерархически  структурированные данные состоят  из нескольких записей одна из которых  определена как корневая. Примером иерархической модели могут служить  деревья: 
 

 

 

       Где КЛИЕНТ, ЗАКАЗ, ТОРГОВЫЙ АГЕНТ являются записями (КЛИЕНТ - корневая запись), НОМЕР, ФАМИЛИЯ, ИМЯ, ОТЧЕСТВО - поля записи КЛИЕНТ, линиями показаны связи.

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

       Между записями в иерархии могут быть определены связи: “один ко многим”, или “один к одному”, где запись соответствующая элементу “один” указанной связи, определяется как исходная, а соответствующая элементу “много” - как порожденная.

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

       Сетевая модель: 
 

 

       Где КЛИЕНТ, ЗАКАЗ, ТОРГОВЫЙ АГЕНТ являются записями, НОМЕР, ФАМИЛИЯ, ИМЯ, ОТЧЕСТВО - поля записи КЛИЕНТ, линиями показаны связи.

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

       Реляционная модель:

 Строка                         Столбец

НОМЕР - КЛИЕНТА ФАМИЛИЯ - КЛИЕНТА ИМЯ - КЛИЕНТА ОТЧЕСТВО - КЛИЕНТА
         
     

                      Поле

НОМЕР - ЗАКАЗА НАЗВАНИЕ - ЗАКАЗА ТОРГОВЫЙ  АГЕНТ
     
     
 
 
НОМЕР - ТОРГОВОГО АГЕНТА ФАМИЛИЯ ИМЯ ОТЧЕСТВО ПОСТАВЛЯЕМЫЙ  ТОВАР
         
         
 
 

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

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

       В зависимости от рассмотренных выше моделей данных базы данных могут быть иерархическим, сетевыми и реляциоными. Дальше мы будем рассматривать только реляционные базы данных.

       С базами данных неразрывно связано такое  понятие как СУБД. СУБД(система управления базами данных) - программа которая управляет данными, осуществляет хранение, извлечение, поиск, редактирование информации хранимой в базе данных. СУБД также подразделяются на иерархические, сетевые и реляционые в зависимости от данных которые они обрабатывают. Существуют множество различных СУБД: IMS, СЕТОР, ORACLE, CLIPPER, FOX PRO, ACCESS. В данной работе мы рассмотрим только MICROSOFT ACCESS. 

       2. MICROSOFT ACCESS. 

       Несколько слов о ... 

       Microsoft Access - это интерактивная реляционная СУБД(relational database management system - RDBMS ) для WINDOWS . Это программа, которую Вы можете использовать для хранения и извлечения данных в зависимости от отношений, которые Вы установили. Работа с ней упрощена посредством манипулятора мыши. Графические возможности оболочки производят большое впечатление при изготовлении высококачественных отчетов и распечаток. Все это благодаря поддержки   True-type  шрифтов и встраивания OLE-объектов(Object Linking and Embeding) в рамках среды WINDOWS. OLE - объект  представляет собой ссылку на определенную информацию, которая остается в своей первоначальной форме. OLE-объектом  может быть EXCEL - таблица, Paintbrush - иллюстрация или  Sound - файл.

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

       Access также предоставляет в распоряжение пользователя механизмы работы с базами данных различных форматов. К примеру, можно прямо обращаться к базам данных dBASE, Paradox или Btrieve  без конвертирования их в формат, используемый  Access. В состав пакета  Access также входит язык Access Basic (встроенный диалект языка Visual  Basic ), дающий возможность формирования специализированных систем  управления базами данных.

       Теперь  перейдем к более подробному рассмотрению системы Access. Основными понятиями или объектами этой системы являются: таблицы, запросы, формуляры, отчеты, макросы и модули. И конечно же главным понятием будет база данных (database).

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

  • Активизируйте окно Microsoft Access и выберите в меню File директиву New Database (или щелкните кнопкой New Database в строке пиктограмм). Microsoft Access высвечивает диалоговое окно New Database  и автоматически дает имя Вашей базе данных , которое Вы можете заменить.
  • В строке File Name, напечатайте Ваш вариант имени базы данных. Оно может содержать до 8 символов без пробелов. Microsoft Access автоматически добавляет расширение .MDB к имени Вашей базы данных, если Вы этого не сделали.
  • Если Вы хотите хранить базу данных в определенном месте выберите соответствующую директорию в списке директорий Directories list.
  • Нажмите на кнопку  OK.

       Microsoft Access создает пустой файл базы данных и открывает окно базы данных Database window.

       Окно  Базы данных: 

 

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

  • Если необходимо, активизируйте Microsoft Access.
  • Из меню File выберите директиву Open Database (или щелкните кнопкой Open Database в строке пиктограмм ). Microsoft Access высвечивает диалоговое окно Open Database.
  • В строке File Name  выберите соответствующее имя базы данных, предварительно выбрав соответствующую директорию в списке директорий Directories list и соответствующий накопитель в строке Drives.
  • Нажмите на кнопку OK.

       Microsoft Access высветит окно соответствующей базы данных. При открытии базы данных  можно ограничить возможные операции с базой данных только чтением и ограничить круг  пользователей, имеющих доступ к базе данных только собственной персоной. Такие ограничения могут оказаться полезными, если база данных эксплуатируется в многопользовательской  системе. Если необходимо только просмотреть базу данных и содержащиеся в ней объекты, но не изменять их, то при открытии базы данных необходимо активизировать контрольный индикатор Read Only (только чтение).

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

       Базу  данных можно подвергнуть сжатию, для этого необходимо выбрать  в меню File директиву Compact Database (сжать базу данных). Access создает копию базы данных и по-новому размещает ее на диске. После выбора сжимаемого файла в диалоговом окне сжатия базы данных появляется диалоговое окно цели сжатия(Database to Compact Into), в котором можно выбрать имя для сжатой версии базы данных. Если используется то же самое имя, и база данных оказывается успешно сжатой, то по завершении сжатия Access  автоматически уничтожает  исходную(несжатую) версию.

       Базу  данных можно зашифровать для защиты секретной информации от  просмотра. Это осуществляется с помощью директивы Encrypt Database (расшифровать - Decrypt   Database). В появившемся диалоговом окне  выберите подлежащую шифрованию/дешифрованию базу данных и щелкните на кнопке OK. В результате откроется диалоговое окно  целевого файла,  где следует указать имя файла, в который будет помещен результат шифрования/дешифрования. Если используется то же самое имя и база данных была успешно зашифрована/расшифрована, то Access автоматически заменяет оригинальный файл на полученный в результате преобразования.

       В некоторых ситуациях база данных может оказаться поврежденной. Для  восстановления базы данных служит директива  Repair Database (восстановить базу данных) в меню File. Эту операцию рекомендуется применять в целях профилактики так как Access не замечает, что база данных была повреждена. В диалоговом окне ремонта нужно ввести имя,  директорию и накопитель поврежденной(или подозреваемой в повреждении) базы данных и нажать кнопку OK. После этого Access займется “починкой” заданной базы данных и спасет то, что еще можно спасти.

       Если  пользователь закончил работу с базой  данных, то ее следует закрыть. Для  этого:

  • Активизируйте окно базы данных, если это необходимо.
  • В меню File выберите директиву Close Database.

       Можно закрыть базу данных и с помощью  двойного щелчка мышью на  кнопке  вызова управляющего меню окна базы данных или нажатием клавиш (Ctrl + F4). 

       Таблицы. 

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

       ТАБЛИЦА - это набор записей(строк таблицы), состоящих из отдельных полей(колонок таблицы), в которых хранится информация и составляющая, собственно, содержание базы данных.

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

  1. С помощью Конструктора таблиц.
  • В окне базы данных щелкните на кнопке Table.
  • Выберите кнопку New в окне базы данных.

       Microsoft Access высветит диалоговое окно New Table

  • Выберите кнопку TableWizards(Конструктора таблиц).
  • В диалоговом окне Конструктора следуйте указаниям по добавлению полей в Вашей таблице.
  1. Без помощи Конструктора.
  • В окне базы данных щелкните на кнопке Table (или выберите директиву Tables в меню View).
  • Нажмите кнопку New в окне базы данных.

       Microsoft Access высветит диалоговое окно New Table.

  • Нажмите кнопку New Table.

       Microsoft Access откроет пустое окно проектирования таблицы. Оно будет выглядеть так: 

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

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

       Access различает следующие типы данных полей:

  • Text Текстовые поля  содержат текст, длина которого не может быть более 255 символов. Реальная длина поля устанавливается с помощью параметра Field Size(размер поля).
  • Memo В Memo-полях сохраняется текст длиной до 32000 символов.  Поля этого типа данных не могут индексироваться.
  • Number Числовые поля содержат произвольные числовые значению. Диапазон допустимых значений определяется параметром Field Size (размер поля).
  • Date/Time Поля даты/времени содержат значения даты и времени в диапазоне от  100 до 9999 года.
  • Currency В денежных полях можно хранить числа с точностью до 15 разрядов слева от запятой и четырех десятичных разрядов справа от запятой.
  • Counter Поле счетчика содержит число, которое автоматически увеличивается Access на 1, когда в таблицу добавляется новый блок данных. 
  • Yes/No В таких полях сохраняются значения Да или Нет. Поля данного типа не могут индексироваться.
  • OLE Object В OLE - полях помещаются объекты, такие как, например, Excel-таблица или Microsoft Draw - графика, обработанные OLE - сервером. Размер поля может быть до 128 МБ. Поля данного типа не могут индексироваться.

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

  • Field Size Размер поля устанавливает максимальную длину текстового поля или способ представления чисел в поле типа Number.
  • Format Формат определяет способ представления данных. Наряду с предопределенными форматами допускается использование собственных форматов пользователя.
  • Decimal Places Десятичные разряды устанавливают количество разрядов справа от десятичной запятой.
  • Caption Заголовок  определяет надпись, которая будет использоваться в качестве наименования поля в формуляре или отчете. Если для этого параметра не будет задано никакое значение, то в качестве надписи будет по умолчанию использовано имя поля.
  • Default Value Значение по умолчанию устанавливает значение, которое будет автоматически введено в поле при генерации блока данных.
  • Validation Rule Ограничение ввода - правило, ограничивающее допустимые для ввода в поле данные.
  • Validation Text Сообщение о нарушении - текст возникающий при попытке ввести в поле данные, не удовлетворяющие правилу, сформулированному в Validation Rule.
  • Indexed Признак индексирования.

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

       Переупорядочение  полей:

  • Выберите поле, подлежащее переразмещению, щелкнув кнопкой мыши в селекторной колонке, расположенной на левом краю окна таблицы.
  • Щелкните в селекторной колонке опять и удерживая правую кнопку мыши нажатой перетащите указатель мыши в нужную позицию.

       Microsoft Access расположит маркированное Вами поле в новом месте.

       Удаление  полей.

  • Откройте таблицу в режиме проектирования.
  • Маркируйте подлежащее удалению поле, щелкнув кнопкой мыши в селекторной колонке.(Или используйте клавиши управления курсором и подведя указатель к соответствующему полю нажмите комбинацию клавиш Shift+Spacebar).
  • Из меню Edit выберите директиву Delete Row (или нажмите кнопку Delete Row в строке пиктограмм).

       Microsoft Access удалит поле и все его данные из Вашей таблицы.

       Вставка полей.

  • Установите указатель строки к полю, над которым Вы бы хотели разместить новое поле, с помощью мыши или клавишами управления курсором.
  • Из меню Edit выберите директиву Insert Row(или выберите кнопку Insert Row в строке пиктограмм).

        Microsoft Access вставит пустое поле над текущей строкой.

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

       Установка первичного ключа.

  • Маркируйте поле, которое Вы хотите использовать в качестве первичного ключа. Для объявления нескольких полей первичным ключом, удерживая клавишу Ctrl маркируйте все необходимые поля.
  • В меню Edit выберите директиву Set Primary Key (или нажмите кнопку Set Primary Key в строке пиктограмм).

       У полей определенных как первичный  ключ слева от строки добавится идентификатор  в виде ключа.

       В Access-таблицы можно встроить объекты из других поддерживающих интерфейс OLE прикладных программ и связать эти объекты с их родительскими программами.

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

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

       Встраивание объектов.

  • В меню Edit обратитесь к директиве Insert Object (Эта директива будет доступна в том случае, если в спецификации таблицы активному в данный момент полю был присвоен тип OLE Object.)
  • В списке Object Type выберите необходимую Вам, поддерживающую OLE интерфейс прикладную программу.
  • Если объект уже существует, щелкните мышью на кнопке File , чтобы открыть диалоговое окно Insert Object from File.
  • Выберите нужный файл и нажмите кнопку OK.

       Связывание  объектов.

  • В меню Edit выберите директиву Past Link. (Однако эта директива становится доступной лишь после того , как подлежащий связыванию объект будет скопирован, т.е. помещен в буфер обмена Clipboard .)
  • Нажмите кнопку OK.

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

       Установка связи между таблицами.

  • В меню Edit выберите директиву Relationships, или щелкните мышью на кнопке Relationships в строке пиктограмм. Откроется окно Relationships , затем окно Add Table.
  • Если окно Add Table не появилось, выберите соответствующую директиву в окне Relationships.
  • В строке Table/Query выберите таблицу для которой вы хотите создать связь. Для выбора более чем одной таблицы одновременно, удерживая клавишу Ctrl выберите все необходимые таблицы. Чтобы выбрать все или блок таблиц отметьте первую таблицу, а затем удерживая клавишу Shift укажите последнюю, нажмите кнопку Add. Вы также можете добавлять таблицы перетаскивая их с помощью мыши из окна базы данных в окно отношений.
  • Теперь с помощью мыши перетащите поля первичного ключа первичной таблицы в соответствующее положение в связываемой таблице. Microsoft Access выдаст диалоговое окно Relationships.
  • Проверьте имена полей подлежащих связыванию, отредактируйте при необходимости. Установите соответствующие опции, например, тип отношения: One(один к одному) или Many(один ко многим).
  • Нажмите кнопку Create.