Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
43
Добавлен:
16.03.2016
Размер:
20.6 Mб
Скачать

Экономящая время подсказка. Создание ярлыка для таблицы

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

Для этого просто щелкните правой кнопкой мыши на рабочем столе, выберите последовательность команд Создать Ярлык (New → Shortcut), а затем в соответствии с инст­рукциями выберите файл вашей БД и задайте имя ярлыка. Теперь, дважды щелкнув кнопкой мыши ярлык, вы сможете в любой момент снова попасть в вашу БД.

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

  1. Измените размер окна программы Access так, чтобы оно занимало не весь экран, и затем сверните окна других программ. Благодаря этому вы сможете видеть рабочий стол за окном Access, что существенно для данного приема.

  2. Найдите в области переходов таблицу, которую вы хотите использовать. Перетащите ее мышью из окна Access на рабочий стол.

  3. Отпустите кнопку мыши. Программа Access создаст ярлык с именем похожим на следующее "Ярлык 'Dolls' (Bobblehead.accdb)" ("Shortcut to Dolls in Bobblehead.accdb"). Дважды щелкните кнопкой мыши ярлык для загрузки БД и немедленного открытия листа данных с таблицей Dolls.

Глава 2

Создание более сложных таблиц

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

Самое важное — вы не сообщили четко и ясно программе Access о том, какой тип данных вы намерены хранить в каждом поле вашей таблицы. БД обрабатывает текст, числа, даты и другие типы данных по-разному. Если вы поместите числовую информацию в поле, предна­значенное для хранения текста, вы не сможете впоследствии выполнять вычисления (напри­мер, найти среднюю стоимость ваших кукол-болванчиков) и не сможете найти ошибки (такие как "кукла-болванчик с ценой "восемьдесят и двадцать"").

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

Типы данных

Не все данные одинаковы. Рассмотрим таблицу Dolls, созданную вами в главе 1 (см. разд, "Создание простой таблицы "главы 1). В ее полях содержится информация нескольких типов:

  • текстовая — в полях Character (персонаж) и Manufacturer (изготовитель);

  • числовая — в полях ID и PurchasePrice (покупная цена);

  • даты — в поле DateAcquired (дата приобретения).

Для вас вполне естественно предполагать, что в поле PurchasePrice всегда содержатся числовые данные, а в поле DateAcquired — информация, которая может интерпретировать­ся как дата. Но если вы не зададите корректно типы данных, программа Access не будет раз­делять ваши предположения и следовать тем же правилам, что и вы.

Когда вы создаете новое поле в Режиме таблицы, Access делает обоснованное предположе­ние о типе данных, анализируя введенную вами информацию. Если вы ввели 4 4, программа считает, что вы создаете числовое поле. Если вы вводите Янв 6, 2007, Access распознает дату. Однако Access легко запутать, что приводит к проблемам, показанным на рис. 2.1.

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

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

Конструктор

Когда вы создаете новую БД, Access предлагает начать с единственной таблицы, отображае­мой в Режиме таблицы. (В предыдущей главе вы узнали, что Режим таблицы — это разде­ленный на ячейки лист, на котором можно сформировать таблицу и ввести данные.) Для переключения в Конструктор щелкните правой кнопкой мыши имя вкладки (например, Dolls) и выберите Конструктор. (Вы также можете воспользоваться группой Режим (View) на вкладке Главная (Ноmе), одноименной группой на вкладке Работа с таблицам → Режим таблицы → Режим (Table Tools → Datasheet → View) или кнопками режима в нижней части окна программы Access. Эти варианты показаны на рис. 2.2. Все перечисленные действия выполняют одно и то же, так что выбирайте наиболее удобный для вас способ.)

Примечание

Если вы открыли БД в формате Access 2003, то не увидите никаких вкладок. Вместо этого вы получите груду перекрывающихся окон. Эту проблему можно устранить и вернуть вкладки, вы­полнив инструкции, приведенные в разд. "Открытие БД, созданной в более старой версии Access" главы 1. Если же вы хотите оставить перекрывающиеся окна, пользуйтесь кнопками вида (view buttons) или лентой для смены видов (вместо щелчка правой кнопкой мыши по заго­ловку вкладки, описанного ранее).

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

Совет

Для ускорения работы вы можете создавать новую таблицу, автоматически стартуя в Конст­рукторе. Для этого выберите на ленте Создание → Таблицы → Конструктор таблиц (Create → Tables → Table Design). Но если вы выберите этот путь, у вашей таблицы не будет очень

важного столбца Код (ID), поэтому вам придется добавить его самостоятельно, как описано в разд. "Создание поля для вашего собственного первичного ключа" далее в этой главе.

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

В Режиме таблицы отображается содержимое вашей таблицы, а в Конструкторе — толь­ко ее структура (рис. 2.3).

Конструктор можно использовать для вставки, реорганизации и удаления полей, но не для добавления новых записей. В таблицу Dolls в Конструкторе можно вставить поле Quantity (количество) для учета дубликатов кукол-болванчиков. Но без перехода обратно в Режим таблицы вы не сможете вставить вашу вновь купленную куклу Bono. Конструктор не предназначен для ввода данных.

На первый взгляд этот режим отображения кажется слишком сложным. Для того чтобы упростить его внешний вид, следует начать с закрытия Окна свойств (Property Sheet), расположенного в правой части окна программы. (В Окне свойств вы можете задать некоторые высокотехнологичные установочные параметры таблицы, принимать во внимание которые прямо сейчас нет никакой нужды.) Для того чтобы убрать это окно, выберите на ленте Работа с таблицами | Конструктор → Страница свойств (Table Tools | Design → Property Sheet). В дальнейшем для восстановления окна вам нужно просто повторить эту последовательность.

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

Организация и описание ваших полей

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

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

Вставка нового поля в конец таблицы. Перейдите в последнюю строку списка полей и введите имя нового поля. Это действие эквивалентно вставке нового поля в Режиме таб­лицы.

Рис. 2.4. Описания помогают напомнить о том, что есть что, если позже понадобится изменять таблицу. Описания — это чудесная идея в том случае, если несколько человек поддерживают одну и ту же БД и необходима уверенность в том, что поля максимально ясны и понятны. Описания также выводятся в строке состояния при вводе данных в таблицу (рис. 2.5)

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

Добавление нового поля между имеющимися полями. Перейдите к полю, находящемуся под тем местом, куда вы хотите вставить новое поле. Щелкните поле правой кнопкой мыши и выберите команду Добавить строки (Insert Rows). Затем введите имя нового поля в пустую строку.

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

Примечание

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

  • Удаление поля. Щелкните правой кнопкой мыши серый квадратик, расположенный слева от поля, которое вы хотите удалить, и выберите команду Удалить строки (Delete Rows). Не забывайте о том, что, удаляя поле, вы также уничтожаете осе хранящиеся в нем данные. Это действие нельзя отменить, поэтому программа Access попросит подтвердить ваше желание выполнить именно это действие.

  • Вставка описания поля. Введите предложение или два в столбец Описание (Description), расположенный рядом с соответствующим полем. (Вы можете использовать имя "знаменитости или вымышленного персонажа, на которых похожа данная кукла-болванчик" как описание поля Character (персонаж) в таблице Dolls, как показано на рис. 2.4.)

Как действуют обновления в Конструкторе

Программа Access не вносит немедленно изменения, сделанные вами в Конструкторе. Она ждет, пока вы закроете таблицу или вернетесь в Режим таблицы. В этот момент Access спро­сит о том, хотите ли вы сохранить таблицу. (Обычный ответ, конечно, — да.)

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

Если вы внесли потенциально проблемное изменение и не можете отложить его, у вас есть возможность применить ваше обновление сразу, таким образом, вы сможете увидеть, возникает ли проблема, прежде чем двигаться дальше. Для этого щелкните мышью кнопку Сохранить (Save) на инструментальной Панели быстрого доступа (Quick Access) (это пик­тограмма дискеты в левом верхнем углу окна программы Access) или просто воспользуйтесь сочетанием клавиш <CtrI>+<S>. Access внесет изменение и сохранит таблицу. Если воз­никнет проблема, программа Access сообщит вам о ней (и позволит выбрать способ ее уст­ранения), прежде чем вы сделаете что-нибудь еще с вашей таблицей.

Типы данных Access

Для определения таблицы Конструктор — гораздо более мощное средство, чем Режим таб­лицы. Как вы увидите в этой главе, Конструктор позволяет откорректировать все мельчай­шие подробности, недоступные (или трудно модифицируемые) в Режиме таблицы.

Одна из таких характеристик — тип данных вашего поля, параметр, сообщающий про­грамме Access о типе информации, которую вы планируете хранить. Для изменения типа данных выделите столбец Тип данных (Data Type), расположенный рядом с соответствующим полем (рис. 2.6). Именно здесь вы отделите текст от чисел (и зададите другие типы

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

Рис. 2.6. Для выбора типа данных щелкните кнопкой мыши столбец Тип данных, расположенный рядом с соответствующим полем. На экране появится раскрывающийся список с 11 вариантами

Существуют и другие свойства поля, зависящие от выбранного типа данных, вы сможете откорректировать их для еще более точного определения типа. Если вы применяете тексто­вый тип данных, далее вы пользуетесь свойствами поля для указания его максимальной длины. Если выбирается десятичное значение (decimal value), то вы используете свойства поля для задания числа десятичных разрядов в дробной части. Задаются свойства поля в Конструкторе в окне Свойства поля, которое отображается под списком полей. В этой главе вы узнаете больше о свойствах поля (и рассмотрите их снова в главе 4).

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

Примечание

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

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

Как вы уже знаете, существуют три основных типа данных; текст, числа и даты. Но про­грамма Access в действительности предлагает 11 разнообразных типов данных, включающих более специализированные варианты. Прежде чем выбрать нужный тип данных, неплохо познакомиться со всеми возможными вариантами. В табл. 2.1 дан обзор первых 10 вариан­тов из списка Тип данных. (Вариант Мастер подстановок (Lookup wizard) не включен в нее, поскольку на самом деле это не тип данных. Этот элемент списка запускает Мастер подста­новок, позволяющий задать список допустимых значений. Вы узнаете больше об этом варианте в разд. "Создание простого списка подстановок, состоящего из констант" главы 4.)

Таблица 2.1. Типы данных Access

Тип данных

Описание

Примеры

Текстовый

(Text)

Числа, буквы, знаки пунктуации и сим­волы, не более 255 (абзац среднего размера)

Имена, адреса, номера телефонов и описания товаров. Это наиболее распространенный тип данных

Поле MEMO

(Memo)

Большие обьемы неформатированного текста до 65 536 символов (среднего размера глава в романе)

Статьи, заметки, письма, ордера на арест и другие короткие документы

Числовой

(Number)

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

Любой тип чисел за исключением де­нежных значений. Хранит измерения, итоги и проценты

Денежный

(Currency)

Аналогичен числовому типу, но опти­мизирован для хранения сумм в де­нежном выражении

Цены, платежи и статьи расходов

Дата/время

(Date/Time)

Календарная дата или время суток (или и то и другое). Не применяйте этот тип данных для задания временных интервалов (количество минут в песне или продолжительность вашей трени­ровки), для этого больше подойдет числовой тип данных

Дни рождений, даты заказов, даты доставки, свидания и время наблюде­ний НЛО

Таблица 2.1 (окончание)

Тип данных

Описание

Примеры

Логический

(Yes/No)

Содержит одно из двух значений: Да или Нет. (Вы можете их считать значе­ниями Истина (True) или Ложь (False))

Строго двухвариантные поля, как мужской/женский или санкционирован­ный/несанкционированный

Гиперссылка

(Hyperlink)

URL (uniform resource locator, унифици­рованный указатель информационного ресурса) Web-сайта, адрес электрон­ной почты или полное имя файла

www.FantasyPets.com, nore-plies@antisocial.co.uk,

f:\Documents\Report.doc

Вложение

(Attachment)

Один или несколько отдельных фай­лов. Содержимое этих файлов колиру­ется в БД

Изображения, документы Word, элек­тронные таблицы Excel, звуковые фай­лы и т. д.

Счетчик

(AutoNumber)

Хранит число, генерируемое програм­мой Access при вставке новой записи. Каждой записи автоматически при­сваивается уникальный номер, иден­тифицирующий ее

Применяется для уникальной иденти­фикации каждой записи, в особенности для первичного ключа (primary key) (см. разд. "Первичный ключ" далее в этой главе). Обычно столбец называется Код (ID)

Поле объекта OLE

(OLE Object)

Хранит встроенные двоичные данные, соответствующие стандарту OLE (Object Linking and Embedding, приме­няется для обозначения технологий на основе СОМ, используемых для созда­ния составных документов внедрением и связыванием) ОС Windows. Приме­няется редко, т. к. приводит к быстро­му увеличению размера БД и другим проблемам. Почти всегда лучше выби­рать тип данных Вложение (Attachment)

Некоторые типы изображений и доку­ментов, созданных в других програм­мах. Главным образом, применяется в БД Access старого стиля. В наши дни проектировщики БД используют тип данных Вложение (Attachment) вместо поля объекта OLE

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

Текстовый

Текстовый(Text) — это универсальный тип данных. Он принимает любую комбинацию букв, цифр и других символов. Итак, вы можете применять текстовое поле для хранения двух слов (например, "Мэри Поппинс"), предложения ("Кандидатура — английская няня, склонная поэтическим взлетам.") или что-нибудь еще ("@#$d sf_&!").

Соседние файлы в папке Управление данными