Тема: Система управления базами данных Microsoft Access.




Объекты базы данных

 

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

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

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

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

Схема - это совокупность связанных объектов базы данных, которыми владеет некий бюджет пользователя (user account).

 

 

Предположим, что вы получили от администратора базы данных имя пользователя (USER1) и пароль. Вы регистрируетесь в базе данных и затем создаете таблицу с именем EMPLOYEE_TBL. На самом деле именем вашей таблицы в этом случае будет USERI.EMPLOYEE_TBL. Имя схемы для таблицы USER1 совпадает с именем ее владельца. Выполнив все эти шаги, вы создадите первую таблицу новой схемы.

 

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

 

EMPLOYEE_TBL

USER1.EMPLOYEE_TBL

 

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

 

USER1.EMPLOYEE_TBL

 

Рис. 3.1 иллюстрирует две схемы реляционной базы данных Рис. 3.1

Примеры схем базы данных

 

 

На рис. 3.1 показаны два бюджета пользователя, владеющих таблицами, - USER1 и USER2. Каждый бюджет имеет свою собственную схему. Далее следует несколько примеров, в которых показано, каким образом каждый пользователь может обращаться к своим таблицам, а также к таблицам, которыми владеет другой пользователь:

USER1 обращается к своей таблице table1:

TABLE1

 

USER1 обращается к своей таблице test:

TEST

 

USER1 обращается к таблице table10 пользователя USER2:

USER2.TABLE10

 

USER1 обращается к таблице test пользователя USER2:

USER2.TEST

 

 

Оба пользователя владеют таблицей с именем TEST. Таблицы базы данных могут иметь одинаковые имена, если они относятся к различным схемам. С этой точки зрения все таблицы базы данных всегда имеют уникальные имена, поскольку имя владельца схемы фактически является частью имени таблицы. Например, таблица USER1.TEST отличается от таблицы USER2.TEST. Если при обращении к таблице базы данных вы не указываете имя схемы, то сервер по умолчанию ищет таблицу, которой вы владеете. Это значит, что если пользователь USER1 попытается обратиться к таблице TEST, то сервер сначала будет искать таблицу с именем TEST, которой владеет пользователь USER1, и только потом он попытается найти другие объекты, владельцем которых является USER1, - такие как, например, синонимы таблиц, содержащихся в других схемах.

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

 

 

Таблица - основной объект для хранения данных

 

Таблица является основным объектом для хранения информации в реляционной базе данных. Она состоит из строк и столбцов, в которых содержатся данные. Таблица занимает в базе данных физическое пространство и может быть постоянной или временной.

 

Поля и столбцы

 

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

 

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

 

Вообще говоря, имя объекта базы данных должно быть непрерывной строкой, ограниченной определенным количеством символов (это количество зависит от конкретной реализации). Для отделения взаимосвязанных групп символов в этом случае обычно используются подчеркивания. Например, столбец, предназначенный для хранения фамилий клиентов, может быть назван CUSTOMER_NAME (a нe CUSTOMERNAME).

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

 

Строки

 

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

 

Оператор CREATE TABLE

 

Вполне очевидно, что оператор CREATE TABLE (создать таблицу) используется для создания таблиц. Несмотря на то, что само создание таблицы (выполнение оператора CREATE TABLE) достаточно тривиально, предварительное планирование ее структуры потребует от вас значительных усилий и времени.

Приступая к созданию таблицы, вы должны уже знать ответы на некоторые простые вопросы:

Данные каких типов будут храниться в таблице?

Как будет называться ваша таблица?

Из каких столбцов будет состоять первичный ключ?

Как будут называться столбцы (поля)?

Какие типы данных будут закреплены за каждым столбцом?

Какой размер памяти должен быть выделен для хранения каждого столбца?

Какие столбцы таблицы требуют обязательного ввода?

 

После того, как вы получите ответы на все эти вопросы, написание самого оператора CREATE TABLE не вызовет у вас никаких затруднений.

Базовый синтаксис оператора CREATE TABLE имеет следующий вид:

CREATE TABLE имя_таблицы

(имя_поля1 тип_данных [ not null ],

имя_поля2 тип_данных [ not null ],

имя_поля3 тип_данных [ not null ],

имя_поля4 тип_данных [ not null ],

имя_поля5 тип_данных [ not null ])

 

 

Теперь давайте создадим таблицу EMPLOYEE_TBL:

 

В состав этой таблицы входит восемь различных столбцов. Обратите внимание на подчеркивания, которые используются для разбиения имен столбцов на отдельные слова - например, поле EMPLOYEE ID (идентификатор служащего) хранится здесь как EMP_ID. За каждым столбцом закреплен определенный тип данных и размер, а с помощью ограничений NULL/NOT NULL установлено, какие столбцы требуют обязательного ввода в каждую строку данных таблицы. Столбец EMP_PHONE определен с атрибутом NULL; это значит, что для него являются допустимыми нулевые значения, поскольку могут быть служащие, у которых нет телефона. Информация, относящаяся к каждому столбцу, отделена запятой, при этом информация обо всех столбцах в целом заключена в круглые скобки (левая скобка помещена перед самым первым столбцом, а правая следует за определением последнего).

 

Последним символом оператора является точка с запятой. В большинстве реализации языка SQL есть символ, который завершает очередной оператор или передает его на выполнение серверу баз данных. В Oracle в этом случае используется точка с запятой, а в Transact-SQL оператор GO. Мы в этой книге будем придерживаться точки с запятой.

 

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

EMP_ID, EMP_NAME, EMP_ST_ADDR, EMP_CITY, EMP_ST, EMP_ZIP, EMP_PHONE, EMP_PAGER

 

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

NULL-значение являеться для столбца значением по умолчанием; по этой причине указывать в явном виде атрибут NULL в операторе CREATE TABLE необязательно.

 

 

Предложение STORAGE

 

Во многих реализациях реляционных баз данных доступна та или иная форма предложения STORAGE. Это предложение оператора CREATE TABLE используется для начального задания размеров таблицы и обычно выполняется при ее создании. Ниже приводится синтаксис предложения STORAGE в одной из реализации:

 

 

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

 

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

Предложения STORAGE отличаются для разных реализаций реляционных баз данных. В предыдущем примере мы использовали предложение STORAGE СУБД Oracle, добавленное к оператору CREATE TABLE. Не забывайте, что стандарт ANSI SQL это всего лишь стандарт. Сам он не является языком программирования, он лишь служит для производителей руководством относительно того, каким образом они должны разрабатывать свои реализации языка SQL. Кроме того, вы легко обнаружите, что типы данных также различаются от реализации к реализации. Большинство вопросов, связанных с реальным хранением и обработкой данных, являются специфичными для конкретной реализации.

 

 

Соглашения о наименованиях

 

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

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

 

Команда ALTER TABLE

 

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

Стандартный синтаксис команды ALTER TABLE имеет следующий вид:

 

 

Изменение структуры таблицы

 

С помощью команды ALTER TABLE вы можете модифицировать атрибуты столбца. Под его атрибутами мы понимаем здесь следующее:

Тип данных столбца

Его размер, точность или масштаб

Возможность хранить в столбце нулевые значения

 

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

 

 

В следующем примере мы используем команду ALTER TABLE, чтобы изменить атрибуты столбца EMP_ID таблицы EMPLOYEE_TBL:

 

ALTER TABLE EMPLOYEEJTBL MODIFY (EMP_ID VARCHAR2 (10));

 

Таблица изменена.

 

Этот столбец уже был определен с типом данных VARCHAR2 (символьная строка переменной длины), однако теперь мы увеличили его максимальную длину с 9 до 10 байт.

Добавление в таблицу обязательных полей

 

Одним из основных правил при добавлении столбцов в существующую таблицу является то, что в случае, когда в таблице уже содержатся данные, добавляемый вами столбец не может быть определен с атрибутом NOT NULL. Этот атрибут означает, что для каждой строки данных таблицы соответствующий столбец должен содержать некоторое значение, поэтому добавление столбца с атрибутом NOT NULL приводит в этом случае к появлению противоречия - уже существующие строки данных таблицы не будут иметь в новом столбце ненулевых значений.

 

Тем не менее, существует один способ добавления обязательных полей в существующую таблицу:

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

Введите в новый столбец какое-нибудь значение для каждой строки данных таблицы.

Убедившись в том, что новый столбец содержит ненулевое значение для каждой строки данных, измените структуру таблицы, заменив атрибут этого столбца на NOT NULL.

Модификация определений столбцов

 

При изменении определений существующих столбцов таблицы вам следует принимать во внимание несколько соображений.

 

Далее следуют некоторые общепринятые правила, которыми следует руководствоваться при изменении определений столбцов:

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

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

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

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

Количество десятичных знаков числового типа данных может быть уменьшено или увеличено.

Тип данных столбца, как правило, может быть изменен.

 

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

Создание новой таблицы из уже существующей

 

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

 

create table имя_новой_таблицы as

select [ * | столбец1, столбец2 ]

from имя_таблицы

[ where ]

 

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

 

Давайте сначала выполним простой запрос и посмотрим, какие данные содержатся в таблице PRODUCTS_TBL.

 

select * from products_tbl;

 

 

Оператор SELECT * выбирает данные из всех полей указанной таблицы.

 

 

Теперь на основе предыдущего запроса мы создадим новую таблицу PRO-DUCTS_TMP:

 

create table products_tmp as

select * from products_tbl;

 

Таблица создана.

 

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

 

select *

from products_tmp;

 

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

 

Удаление таблиц

 

Удаление таблицы является одной из самых простых операций. Если вы при этом используете опцию restrict и на вашу таблицу ссылается какое-нибудь представление или ограничение, то оператор drop table (удалить таблицу) возвратит ошибку. Если же вы используете опцию cascade, то оператор drop table выполнится успешно и вместе с вашей таблицей будут удалены все ссылавшиеся на нее представления и ограничения. Синтаксис оператора DROP TABLE имеет следующий вид:

 

drop table имя_таблицы [ restrict | cascade ]

 

В следующем примере мы удалим только что созданную нами таблицу:

 

drop table products_tmp;

 

Таблица удалена.

 

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

 

 

Ограничения целостности

 

Ограничения целостности используются для того, чтобы гарантировать досоверность и непротиворечивость информации в реляционной базе данных. Управление целостностью информации в реляционной базе данных осуществляется посредством так называемой ссылочной целостности. Существует множество типов ограничений целостности, которые играют важную роль в peaлизации механизма ссылочной целостности (RI).

Ограничение первичного ключа (PRIMARY KEY)

 

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

 

В следующем примере для таблицы EMPLOYEE_TBL в качестве первичного ключа (PRIMARY KEY) задается столбец EMP_ID.

 

 

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

 

В этом примере ограничение первичного ключа определяется в операторе CREATE TABLE после запятой, отделяющей список столбцов.

Ограничение UNIQUE

 

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

Давайте рассмотрим следующий пример:

 

 

Первичным ключом здесь является столбец EMP_ID; это значит, что идентификатор сотрудника компании гарантирует уникальность каждой записи таблицы. Обычно в качестве первичного ключа выбирают столбец, который часто используется при построении запросов, особенно в случае соединения таблиц. Столбец EMP_PHONE мы определили с атрибутом UNIQUE; таким образом предполагается, что никакие два сотрудника не могут иметь одинакового телефонного номера. Между этими двумя столбцами нет особой разницы за исключением того, что первичный ключ служит как для упорядочения данных в таблице, так и для соединения связанных между собой таблиц.

Ограничение внешнего ключа (FOREIGN KEY)

 

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

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

 

 

В следующем примере мы рассмотрим создание внешнего ключа:

 

 

В этом примере столбец EMP_ID определен в качестве внешнего ключа таблицы EMPLOYEE_PAY_TBL. Как видите, он ссылается на столбец EMP_ID таблицы EMPLOYEE_TBL. Этот внешний ключ гарантирует, что для каждого значения EMP_ID таблицы EMPLOYEE_ PAY_TBL существует соответствующее значения EMP_ID в таблице EMPLOYEE_TBL. Такое отношение называется отношением между родительской и дочерней таблицами. В нашем случае родительской таблицей является таблица EMPLOYEE_TBL, а дочерней - таблица ЕМРLOYEE_PAY_TBL. Чтобы получить еще более ясное представление о том, что такое отношение между родительской и дочерней таблицами, внимательно изучите рис. 3.2. Рис. 3.2

Отношение между родительской и дочерней таблицами

 

 

Из этого рисунка видно, что столбец EMP_ID дочерней таблицы ссылается на столбец EMP_ID родительской таблицы. Чтобы некоторое значение можно было ввести в поле EMP_ID дочерней таблицы, это значение сначала должно существовать в поле EMP_ID родительской таблицы. Точно также, чтобы некоторое значение можно было удалить из поля EMP_ID родительской таблицы, сначала должны быть удалены все соответствующие значения поля EMP ID из дочерней таблицы. Так работает механизм ссылочной целостности.

 

Внешний ключ может быть добавлен в таблицу с помощью команды ALTER TABLE, так как показано в следующем примере:

 

alter table employee_pay_tbl

add constraint id_fk foreign key (emp_id)

references employee_tbi (emp_id);

Опции команды ALTER TABLE отличаются в разных реализациях языка SQL, особенно это относиться к ограничениям. Более того, часто также различаются сами определения ограничений и их применение, однако сама концепция ссылочной целостности остается той же самой для всех реляционных баз данных.

 

Ограничение NOT NULL

 

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

Использование ограничения CHECK

 

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

Следующий пример иллюстрирует использование ограничения CHECK:

 

 

Ограничение CHECK, установленное для столбца EMP_ZIP таблицы EMPLOYEE_TBL, гарантирует, что все сотрудники компании, информация о которых будет введена в эту таблицу, будут иметь почтовый индекс '46234'. Возможно, что это чересчур сильное ограничение. Тем не менее, вы сможете увидеть, как оно работает.

 

Если вы хотите, чтобы ваш почтовый индекс находился внутри некоторого списка значений, то определение ограничения CHECK в этом случае будет выглядеть следующим образом:

 

CONSTRAINT CHK_EMP_ZIP CHECK (EMP_ZIP in ('46234','46227','46745'));

 

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

 

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

Тема: Система управления базами данных Microsoft Access.

Цели: Студенты должны знать: возможности и применение СУБД; этапы построения баз данных; основные понятия: поле, запись, файлы.

 

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

 

Теоретическая часть

 

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

 

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

 

Структура базы данных

 

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

 

Свойства полей. Типы полей

 

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

 

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

 

Уникальным свойством любого поля является его Имя. Одна база данных не может иметь двух полей с одинаковыми именами.

 

Кроме имени у поля есть еще свойство Подпись. Подпись это та информация, которая отображается в заголовке столбца. Если подпись не задана, то в заголовке столбца отображается имя поля. Разным полям можно задать одинаковые подписи.

 

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

 

1. Текстовый - одна строка текста (до 255 символов)

 

2. Поле МЕМО - текст, состоящий из нескольких строк, которые затем можно будет просмотреть при помощи полос прокрутки (до 65 535 символов).

 

3. Числовой - число любого типа (целое, вещественное и т.д.).

 

4. Дата/время - поле, содержащее дату или время.

 

5. Денежный - поле, выраженное в денежных единицах (р., $ и т.д.)

 

6. Счетчик - поле, которое вводится автоматически с вводом каждой записи.

 

7. Логический - содержит одно из значений TRUE (истина) или FALSE (ложно) и применяется в логических операциях.

 

8. Поле объекта OLE - содержит рисунки, звуковые файлы, таблицы Excel, документ Word и т.д.

 

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

 

Объекты Access (рис. 2)

 

1. Таблицы - основные объекты базы данных. В них хранятся данные. Реляционная база данных может иметь много взаимосвязанных полей.

 

2. Запросы - это специальные структуры, предназначенные для обработки данных. С помощью запросов данные упорядочивают, фильтруют, отбирают, изменяют, объединяют, то есть обрабатывают.

 

3. Формы - это объекты, с помощью которых в базу вводят новые данные или просматривают имеющиеся.

 

4. Отчеты - это формы "наоборот". С их помощью данные выдают на принтер в удобном и наглядном виде.

 

5. Макросы - это макрокоманды. Если какие-то операции с базой производятся особенно часто, имеет смысл сгруппировать несколько команд в один макрос и назначить его выделенной комбинации клавиш.

 

6. Модули - это программные процедуры, написанные на языке Visual Basic.

 

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

 

1. Кнопка Открыть - открывает избранный объект для просмотра, внесения новых записей или изменения тех, что были внесены ранее.

 

2. Кнопка Конструктор - режим, в котором осуществляется построение таблицы или формы.

 

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

 

Рассмотрим пример разработки базы данных «Лекарственные растения». Разработка состоит из нескольких этапов.

 

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

 

ЗАДАНИЕ НА ДОМ! Подготовить для базы данных сведения о лекарственных растениях и об общих правилах их сбора, сушки, и хранения.

 

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

 

3. этап. Синтез компьютерной модели и технология создания базы данных "Лекарственные растения". Это практическая часть нашей работы.

 

УПРАЖНЕНИЕ № 1. Запуск Access. Создание файла новой базы данных.

 

1. Пуск4Программы4Microsoft Access

 

2. После запуска на экране появляется окно Access, в котором необходимо щелкнуть по ссылке Новая база данных

 

3. На экране появляется окно Файл новой базы данных. В поле Папка откройте личную папку в папке своей группы на сетевом диске преподавателя. В текстовом поле Имя файла вместо db1 введите lekarstvennie rasteniya. Щелкните Создать.

 

4.

 

Рис. 1 Окно Microsoft Access

 

УПРАЖНЕНИЕ 2. Создание таблицы "Растения".

 

Наша база данных состоит из одной таблицы. Начнем работу с создания исходной таблицы "Растения".

 

1. В окне lekarstvennie rasteniya выделите объект Таблицы и щелкните Создать.

 

2. В появившемся окне Новая таблица выберите пункт Конструктор и щелкните ОК

 

3. В окне Таблица 1: таблица в графу Имя поля введите имена полей, а в графу Тип данных введите их тип:

 

Рис. 2 Объекты и кнопки Access

 

 

· Русское название Текстовый

 

· Латинское название Текстовый

 

· Место произрастания поле МЕМО

 

· Время заготовки Текстовый (размер поля 250)

 

· Используемые части Текстовый (размер поля 250)

 

· Биологически активные вещества поле МЕМО

 

· Картинка поле объекта OLE

 

4. Закройте окно Таблица1:таблица, щелкнув по кнопке Закрыть.

 

5. На вопрос Сохранить изменения макета или структуры таблицы? Щелкните Да.

 

6. Введите в окне Сохранение имя таблицы - "Растения", ОК.

 

7. На вопрос Задать ключевые поля? щелкните Нет.

 

УПРАЖНЕНИЕ № 3. Заполнение таблицы Растения.

 

1. В окне Лекарственные растения Фамилия группа: база данных щелкните Открыть. На экране появится окно Растения: таблица

 

2. Установите курсор в поле Русское название и введите "Зверобой продырявленный". Для перемещения в следующее поле нажмите клавишу Enter или Tab.

 

3. В поле Латинское название введите "Hypericum perforatum L."

 

4. В поле Место произрастания введите "Встречается в лесной и лесостепной зонах европейской части РФ, в Сибири, на Урале, Кавказе". Следует помнить, что по нажатию клавиши Enter при работе с полем MEMO осуществляется переход к следующему полю. Поэтому нажимать на клавишу Enter можно только в конце текста.

 

5. В поле Время заготовки введите "Во время цветения"

 

6. В поле Используемые части введите "Верхняя часть стеблей с листьями и цветками"

 

7. В поле Биологически активные вещества введите "Горькое экстрактивное вещество, эфирное масло, каротин, витамины С, РР"

 

8. Щелкните правой кнопкой в поле Картинка.

 

· В контекстном меню щелкните Добавить объект…

 

· Установите переключатель · Создать из файла

 

· Щелкните кнопку Обзор и выберите файл Зверобой из папки с картинками преподавателя, щелкните ОК

 

· Щелкните кнопку ОК, для завершения заполнения поля

 

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

 

9. Закройте таблицу и перейдите в окно lekarstvennie rasteniya

 

УПРАЖНЕНИЕ № 4. Создание формы.

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-06-11 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: