Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БД / Access_teacher.doc
Скачиваний:
126
Добавлен:
26.05.2015
Размер:
1.12 Mб
Скачать

6.5. Создание базы данных

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

Для создания пустой базы данных выберите команду Файл–>Создать (кнопка ), а затем в окне диалогаСозданиещелкните дважды по значкуНовая база данных. После этого откроется окно диалогаФайл новой базы данных. В раскрывающемся спискеПапкавыберите нужный диск и папку, например, дискС:,папкаМои документы.После этого в полеИмя файла введите имя новой базы данных. Access автоматически добавит к имени файла расширение .MDB . Теперь остается только нажать на кнопкуСоздатьи на экране появится окно базы данных, представленное на рис. 6.2.

Рис. 6.2. Окно пустой базы данных

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

В Microsoft Access существуют четыре способа создания пустой таблицы:

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

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

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

4. В режиме конструктора можно непосредственно указать параметры всех элементов структуры таблицы.

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

Для примера определим таблицу тВУЗыдля базы данных «Профконсультант средней школы». Перейдите на вкладкуТаблицыи нажмите кнопкуСоздать. В окне диалогаНоваятаблицавыберитеКонструктори нажмите кнопкуOk. Access выведет окно пустой таблицы в режиме конструктора. На рис. 3 показана таблицатВУЗыв режиме таблицы с уже определенными полями.

Рис. 6.3. Окно таблицы тВУЗы в режиме конструктора

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

Типы данных Текстовый формат

Размер текстового поля может находиться в пределах от 1 до 255 символов.

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

Кодовые символы формата текстовых полей представлены ниже:

@– должен быть текстовый символ или пробел;&– текстовый символ;<– преобразование символов в нижний регистр;>– преобразование символов в верхний регистр.

Формат поля может состоять из двух частей, разделенных знаком «точка с запятой». Первая часть является собственно форматом ввода, а вторая – определяет значение поля, если данные в него не были введены.

Маска вводатакже представляет собой последовательность кодовых символов:

0 – должна быть цифра от 0 до 9;9- цифра или пробел;#– цифра, пробел, плюс или минус;L– должна быть буква (A...Z, А...Я);?– буква;А– должна быть буква или цифра;а– может быть буква или цифра;&– должен быть любой символ или пробел;С– произвольный символ;: ; - /– разделители, которые сохраняют свой вид в строке данных;<– преобразование символов в нижний регистр;> – преобразование символов в верхний регистр;!– маска должна заполняться справа налево;\– ввод следующего за обратной косой чертой символа как символьной константы.

Кодовые символы 0, А, L, & предполагают обязательный ввод данных в поле. Поскольку некоторые виды данных (даты, время, телефонные номера) содержат стандартные разделители, то для упрощения ввода предусмотрено, что некоторые общепринятые символы-разделители воспринимаются в маске ввода «буквально», то есть записываются в поле наряду с введенными данными. Кроме того, для определения символьных констант, состоящих из нескольких символов, допускается использовать двойные кавычки. В отличие от символов формата, символы маски ввода являются общими для всех типов полей, в которых разрешено применение маски.Парольсоздание поля для ввода пароля, вводимые символы не отображаются.

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

Свойство «значение по умолчанию»говорит само за себя. Если при вводе данных часто повторяется одно и то же значение (в данном случае текстовая строка), то целесообразно «попросить» программу автоматически подставлять заданное значение во все вновь создаваемые поля. Пользователь же в процессе работы решает, оставить поле как есть или изменить данные. Это может сэкономить время при вводе, но может быть и причиной дополнительных ошибок, если оператор забудет стереть ненужные значения поля. С этим свойством связана процедураПостроитель выраженийдля облегчения формирования значения поля. Процедура вызывается нажатием кнопки, которая появляется после щелчка в строке «Значение по умолчанию».

Свойство «условие на значение»позволяет создать фильтр, который разрешит вводить в данное поле только то, что удовлетворяет определенному условию. Для задания такого критерия можно запуститьПостроитель выражений. Если же оператор БД нарушит условие ввода, то программа сообщит ему об этом, выведя на экран текст, определенный, каксвойство «сообщение об ошибке».

При задании условия на значение используются следующие операторы сравнения:

 <

 Меньше

 <=

 Меньше или равно

 >

 Больше

 >=

 Больше или равно

 =

 Равно

 <>

 He равно

 IN

 Проверяет на равенство любому значению из списка; операндом является список, заключенный в круглые скобки

 BETWEEN

 Проверяет, что значение поля находится в заданном диапазоне; верхняя и нижняя границы диапазона разделяются логическим оператором AND

 LIKE

 Проверяет соответствие текстового или Мемо поля заданному шаблону символов

Примеры задания простых условий на значение для полей: Is Null Or >0 And <800– проверяет, является ли поле пустым(Is Null)или же введенное значение лежит в диапазоне от 0 до 800;>50 And <100илиBETWEEN 50 And 100данные два условия идентичны и проверяют числовое значение на попадание в интервал от 50 до 100;In («Белгород», «Москва», «Los Angeles»)– с помощью оператора IN можно выполнить множественное сравнение;#15.01.94#– если в качестве операнда используется дата, то она должна быть заключена в символы числа (#);LIKE «*товар##*»– данное условие используется для нахождения строк, содержащих подстрокутовари две произвольные цифры.

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

Свойство «пустые строки»тоже логическое и похоже на предыдущее. Оно определяет, разрешены или нет в данном поле пустые строки. Для Access существуют два разных понятия: «поле, в которое ничего не было введено» и «поле с пустой строкой, то есть содержащее пробелы». Реляционные базы данных обеспечивают возможность хранения в полях таблиц специального значенияNull, называемогопустым значением, которое обозначает некоторое неизвестное значение. Пустое значение имеет особые свойства. Так, пустое значение не может быть равно никакому другому значению, в том числе другому пустому значению. Это означает, что нельзя объединить (связать) две таблицы по значению Null. Условие "А = В", где А или В содержит Null, всегда будет ложным. Наконец, пустые значения не учитываются витоговых функциях, таких какSum (Сумма)илиAvg (Среднее значение). Вы можете лишь проверить наличие значения Null, сравнив значения поля со специальной константой NULL или используя встроенную функциюIsNull. С другой стороны, вы можете установить значение текстового или Мемо поля равнымпустой строке (""), и это будет означать, что значение поля известно, но поле пустое. Вы можете соединять таблицы по пустым строкам. При сравнении пустые строки считаются равными друг другу. Чтобы разрешить пользователю ввод пустых строк в текстовые и Мемо поля, вам следует установить для свойстваПустые строки значениеДа. Если вы этого не сделаете, Access преобразует введенные пользователем пустые строки, а также строки, состоящие из пробелов, в строки, содержащие значение Null. Если при этом свойствоОбязательное поле для текстового поля установлено какДа, то Access сохраняет пустую строку в качестве значения, когда пользователь вводит "" или строку, состоящую только из пробелов.

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

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

Свойство «сжатие Юникод». В Microsoft Access 2000 для хранения информации полей типа «Текстовый», «Поле MEMO» и «Гиперссылка» используется кодировка Юникод (Unicode). В Юникод каждый символ представляется двумя байтами, а не одним, как в традиционных кодировках. В результате для хранения данных полей типа «Текстовый», «Поле MEMO» и «Гиперссылка» требуется больше места, чем в предыдущих версиях Access.

Этот эффект использования кодировки Юникод можно сгладить, установив свойство Сжатие Юникод (Unicode Compression) поля в значение Да. При создании полей типа «Текстовый», «Поле MEMO» и «Гиперссылка» это значение свойства устанавливается по умолчанию. Когда свойствоСжатие Юникодполя имеет значениеДа, все символы, первый байт которых равен 0, будут сжиматься при сохранении и восстанавливаться при выборке. Если первый байт отдельного символа не равен нулю, этот символ не будет сжиматься.

Соседние файлы в папке БД