Ввод информации в базу данных. способы ввода
Лабораторная работа №4
Ввод, поиск и отбор информации в таблицах
базы данных
Цель занятия
1. Получение необходимых сведений и приобретение навыков ввода информации в базу данных простейшими способами.
2. Приобретение навыков редактирования данных в таблицах.
3. Получение необходимых сведений и приобретение навыков поиска, отбора и просмотра информации в таблицах баз данных, созданных в среде СУБД MS Access.
Общие сведения
Ввод информации в базу данных. Способы ввода
Простейшим способом ввода информации в БД (но не самым легким) является ввод данных в режиме таблицы. Рассмотрим последовательность действий.
Если в области переходов на вкладке Таблицы выбрать произвольную таблицу и открыть ее двойным щелчком левой кнопки мыши, таблица откроется в режиме Таблицы (рис. 4.1).
рис. 4.1. Таблица «Сотрудники» в Режиме таблицы |
На рис. 4.1 узкий столбец слева называется полем выбора записи.
Теперь можно приступать к вводу данных. Если для поля таблицы установлен тип данных Счетчик, то не нужно вводить в это поле информацию. Каждый раз, когда начинается ввод данных в новую строку, содержимое поля Счетчика автоматически увеличивается на 1, что обеспечивает уникальные значения поля. Для перехода к следующему полю необходимо нажать клавишу Tab или Enter. При заполнении таблицы некоторые поля можно оставлять пустыми (ключевые поля записи оставлять пустыми нельзя). После заполнения самого правого поля строки и нажатия на клавишу Tab или Enter произойдет автоматический переход ко второй строке таблицы.
С помощью поля выбора записи (рис. 4.1) можно выделить всю запись в таблице. Для выделения записи нужно установить указатель мыши на поле выбора записи в соответствующей строке и щелкнуть левой кнопкой мыши. После этого можно произвести какие-либо действия со всей записью целиком (например, удалить или копировать в буфер обмена). Кроме этого в поле выбора записи отображается значок, показывающий следующие изменения состояния записи:
- новая запись, в которую можно вводить данные;
-изменяемая запись, еще не сохранена.
Известно, что для сохранения результатов работы нужно проводить операцию записи информации на диск. Но при работе с БД эта операция проводится автоматически. В MS Access сохранение текущей записи проводится каждый раз после перехода к новой записи (т.е. после перехода курсора в новую строку). Существующий порядок записи информации позволяет надежно сохранять данные, даже если во время работы будет отключено электропитание.
Для экономии места в памяти компьютера при хранении БД на каком-либо накопителе обычно поля внешнего ключа имеют числовой тип данных. При заполнении этих полей удобнее вводить соответствующую текстовую информацию, а не запоминать коды. Для этого в таблице необходимо соответствующее поле заменить на поле со списком:
1. Перейти в режим Конструктора таблиц.
2. Сделать текущим соответствующее поле (текущим является поле, в котором в данный момент времени находится текстовый курсор).
3. В нижней части окна Конструктора таблиц в разделе Свойства перейти на вкладку Подстановка.
4. В строке Тип элемента управления распахнуть список и выбрать Поле со списком.
5. Установить курсор в строке Источник строк и щелкнуть по кнопке с многоточием. Откроется окно, аналогичное окну создания запросов. В окне диалога Добавление таблицы выбрать таблицу, связанную по внешнему полю, для которого изменяем тип данных. Закрыть окно Добавление таблицы.
6. Из выбранной таблицы добавить в бланк запроса ключевое поле и поле, содержащее необходимую текстовую информацию. Закрыть бланк запроса, нажав на кнопку Закрыть. В появившемся окне диалога ответить Да для подтверждения сохранения изменений инструкции SQL и обновления свойства.
7. В строке Число столбцов ввести значение 2.
8. В строке Ширина столбцов ввести через «точку с запятой» 2 значения для ширины отображаемых столбцов, например, 1; 5. Для того чтобы числовое значение, по которому установлена связь, не отображалось первое значение в строке Ширина столбцов необходимо задать равным нулю.
9. Сохранить изменения. Перейти в режим таблицы.
Теперь при заполнении таблицы необходимую информацию в соответствующем поле можно выбирать из списка.
Редактирование данных в таблицах
При просмотре таблиц, содержащих большое количество столбцов, неизбежно возникают проблемы. При перемещении к крайним правым столбцам с экрана исчезают поля, расположенные в левой части таблицы. Если в левой части таблицы содержатся поля, идентифицирующие запись в БД (например, Код клиента), а нужно изменить в нескольких записях значения поля, расположенного далеко в правой части, то придется перед изменением очередной записи выполнить следующую последовательность действий:
1. Сначала нужно переместиться к левой части таблицы и найти в ней нужную строку.
2. Переместить курсор в правую часть найденной строки в нуждающееся в изменении поле и выполнить нужные изменения. После чего все повторится снова.
Если нужно изменить не один десяток записей, то такой способ работы с таблицей крайне неудобен. Поэтому нужно изменить порядок следования столбцов (навсегда или хотя бы на время редактирования записей). Эту операцию можно проделать в режиме Таблицы.
Для этого необходимо выполнить следующие действия:
1. Поместить указатель мыши в заголовке нужного поля. Указатель мыши должен принять вид черной стрелки, направленной острием вниз.
2. Щелкнуть один раз левой кнопкой мыши. Столбец должен окраситься цветом, как показано на рис. 4.2.
рис. 4.2. Выделение столбца цветом в режиме Таблицы |
3. Установить указатель мыши на заголовке выделенного поля так, чтобы он принял вид белой стрелки, направленной в левый верхний угол, и перетащить столбец в нужное место. Жирная линия между столбцами укажет место, где окажется перемещаемый столбец после того, как будет отпущена левая кнопка мыши.
Рассмотренный способ оказывается эффективным в том случае, если не приходится менять (или добавлять) значения полей большого количества столбцов. Чтобы обойти это неудобство на практике применяют способ, который называется фиксацией полей. Фиксированный столбец автоматически перемещается в крайнее левое положение в таблице и всегда виден на экране, независимо от того, какая часть таблицы отображается в данный момент.
Чтобы выполнить фиксацию столбца, надо проделать следующие операции:
1. Щелкнуть правой кнопкой мыши в любой записи столбца, который нужно закрепить.
2. Из открывшегося контекстного меню выполнить команду Закрепить столбцы.
3. Нажимая клавишу TAB, переместить курсор в правый столбец таблицы. Проследить, как при этом ведут себя столбцы таблицы по отношению к закрепленному полю. Для перемещения в обратном направлении можно использовать комбинацию клавиш SHIFT + TAB.
Если теперь снять фиксацию, т.е. привести таблицу в обычный вид, то можно заметить, что порядок столбцов таблицы изменился.
Для снятия фиксации нужно выполнить следующие действия:
1. Щелкнуть правой кнопкой мыши в любой записи столбца, с которого нужно снять закрепление.
2. Из открывшегося контекстного меню выполнить команду Освободить все столбцы.
Чтобы вернуть прежде зафиксированное поле на свое место, надо выполнить вышеуказанные действия по изменению порядка следования столбцов. Проделав все изложенные выше операции, можно сделать вывод: чем меньше столбцов отображается на экране, тем легче заполнять таблицу.
Чтобы скрыть лишние столбцы, необходимо выполните следующие действия:
1. Щелкнуть правой кнопкой мыши в любой записи столбца, который нужно скрыть.
2. Из открывшегося контекстного меню выполнить команду Отобразить столбцы...
3. В открывшемся диалоговом окне Отображение столбцов оставить флажки только напротив названий тех полей, содержимое которых нужно редактировать. Например, так, как показано на рис. 4.3.
4. После нажатия кнопки Закрыть в таблице будут отображаться только поля, отмеченные флажком.
На рис. 4.3 видны все нужные в данный момент поля. Теперь можно приступать к редактированию данных.
Чтобы в таблице отображались все столбцы, нужно повторно выполнить команду Отобразить столбцы... из контекстного меню, включив флажки для всех полей. Того же результата можно добиться и другим путем, если не выполнять сохранения изменений в макете таблицы. Нужно просто закрыть окно таблицы без сохранения макета или структуры таблицы.
рис. 4.3. Окно диалога Отображение столбцов |
Для выполнения удаления записи из таблицы нужно:
1. Щелкнуть мышью по полю выбора записи в соответствующей строке таблицы. В результате вся строка таблицы окрасится цветом.
2. Нажать клавишу Delete на клавиатуре или выбрать команду Удалить запись из контекстного меню, открывающегося правой кнопкой мыши.
Для введения новой записи нужно нажать кнопку Новая запись внизу под таблицей или использовать команду Перейти - Создать из группы Найти вкладки Главная на ленте инструментов (можно перевести курсор в последнюю пустую строку таблицы клавишами управления курсора или мышью).
Если в таблице имеется поле с типом данных Счетчик, то после удаления записи значение из поля Счетчика больше использоваться не будет. Это обеспечивает уникальность введенных записей. На рис. 4.4 показан пример таблицы, в которой удалена запись. Введенной позже записи соответствует новое значение в поле Счетчика, а удаленное больше не используется.
Если при вводе или редактировании информации была допущена ошибка, можно отказаться от выполненных изменений, нажав клавишу Esc на клавиатуре. При этом будут отменены изменения в редактируемом поле. Чтобы отменить изменения во всех полях редактируемой записи, необходимо нажать Esc еще раз. Ту же операцию можно выполнить другим способом - щелкнув мышью кнопку Отменить последнее действие на панели быстрого доступа или нажав комбинацию клавиш CTRL + Z. Удалить только что сохраненную запись можно также, нажав кнопку Отменить последнее действие или с помощью комбинации клавиш CTRL + Z. Если кнопка Отменить последнее действие отображается бледно-серым цветом, то это значит, что последнее действие отменить невозможно (некоторые действия отменить нельзя, например, удаление записи).
рис. 4.4. Удаление записи и добавление новой записи |
В некоторых случаях, когда требуется вводить повторяющиеся данные, можно ускорить свою работу, копируя нужную информацию, а, не набирая ее вновь. Так если обнаружилось, что некоторые данные, вводимые в таблицу, совпадают с данными из предыдущей строки таблицы, то для их копирования нужно поместить текстовый курсор в соответствующее поле и нажать комбинацию двух клавиш CTRL + '(апостроф).
Для информации, хранящейся в таблице БД, применимы и стандартные способы копирования, удаления и перемещения данных через буфер обмена. Как и во многих других программах пакета Microsoft Office, в MS Access имеются инструменты для работы с буфером и, в первую очередь, это команды группы Буфер обмена вкладки Главная ленты инструментов или команды контекстного меню, открывающегося щелчком правой кнопки мыши:
- кнопка Вырезать удаляет выделенный элемент (поле, запись...) в буфер обмена для последующей вставки;
- кнопка Копировать копирует выделенный элемент в буфер обмена для последующей вставки;
- кнопка Вставить вставляет содержимое буфера обмена в активный объект БД.
Аналогичные операции (вырезать, копировать, вставить) можно выполнить, нажав комбинацию клавиш:
CTRL + Х - вырезать;
CTRL + INSERT (CTRL + C) - копировать;
SHIFT + INSERT (CTRL + V) - вставить.
Копирование всей записи:
1. Щелчком по полю выбора записи выделить первую запись таблицы (которую нужно скопировать) и использовать команду Копировать.
2. Выделить таким же способом вторую запись в таблице (в которую нужно скопировать) и использовать команду Вставить. В результате вторая запись таблицы заменяется первой, и теперь в таблице имеется две одинаковые записи (кроме ключевого поля).
Известно, что информация, помещенная в буфер обмена, будет там находиться до записи новых данных или выключения компьютера. И если нужно, можно повторить вставку из буфера неограниченное количество раз.
Но повторяющиеся данные могут внести путаницу в таблицу. Поэтому чаще всего приходится копировать отдельные поля таблицы. Выполним эту операцию, используя буфер обмена:
1. Чтобы скопировать данные из заполненного поля, надо установить указатель мыши в левой части данного поля так, чтобы он превратился в белый жирный крест, и щелкнуть левой кнопкой мыши. При этом поле нужной записи будет полностью выделено
(рис. 4.5).
2. Скопировать содержимое поля в буфер обмена.
3. Выделить аналогичным способом поле новой записи и нажать кнопку Вставить.
Можно копировать одновременно несколько полей записи, предварительно выделив их. Вставку из буфера в этом случае нужно так же проводить в выделенные таким же способом поля записи. При этом количество полей и типы данных должны совпадать с содержимым буфера.
рис. 4.5. Выделение информации в поле |
И, наконец, еще один способ ускорения ввода информации в БД. Если от записи к записи значения одних и тех же полей повторяются (рис. 4.6), MS Access позволяет настроить ввод данных в таблицы таким образом, что для таких полей будут автоматически подставляться определенные значения в каждой новой записи. В такой таблице в последней строке (в новой записи) уже заполнены поля, для которых настроен автоматический ввод данных (рис. 4.6).
рис. 4.6. Отображение значения по умолчанию в таблице |
Чтобы настроить таблицу на автоматический ввод в нужные поля известных значений, необходимо выполнить следующее: 1. Отобразить таблицу в режиме Конструктора, нажав кнопку Вид в группе Представления на вкладке Главная на ленте инструментов. 2. Щелчком левой кнопки мыши по полю, в котором значения повторяются, сделать это поле текущим. 3. Заполнить свойство поля Значение по умолчанию известным значением (рис. 4.7). 4. При внесении данных в таблицу, чтобы оставить поля заполненными значениями по умолчанию, надо просто нажать клавишу Enter или Tab для перехода в следующее поле. MS Access позволяет заменять уже имеющиеся данные значениями по умолчанию, определенными для этих полей. Для этого нужно поместить текстовый курсор в поле, подлежащее изменению и нажать комбинацию трех клавиш CTRL + ALT + ПРОБЕЛ. |
рис. 4.7. Установка в таблице Значения по умолчанию |
Поиск информации
Пока информации в созданной БД не очень много, поиск и просмотр данных не вызывает затруднений. Но со временем многие таблицы БД разрастаются, и возникает проблема поиска информации. Рассмотрим средства поиска и отбора информации.
Можно осуществить быстрый простой поиск по всей таблице с помощью области Поиск в нижней части таблицы в строке переходов по записям. При вводе в эту область строки для поиска сразу происходит выделение ячейки таблицы, в которой эта строка встречается. После нажатия на клавишу Enter на клавиатуре происходит переход к следующей ячейке, содержащей введенную строку поиска.
Более сложный поиск информации можно осуществить с помощью команды Найти, вызывающей диалоговое окно Поиск и замена (рис. 4.8).
рис. 4.8. Окно диалога Поиск и замена |
Для вызова диалогового окна Поиск и замена нужно нажать на ленте инструментов на вкладке Главная в группе Найти кнопку Найти (альтернатива - комбинация клавиш CTRL + F или команда Найти из контекстного меню, открывающегося правой кнопкой мыши).
Рассмотрим назначение полей диалогового окна Поиск.
1. В поле Образец вводится информация, которую требуется отыскать в таблице.
2. В раскрывающемся списке Просмотр можно выбрать направление поиска информации, начиная с текущего поля. Значения этого поля могут быть следующими:
· Вверх - начиная с поля текущей записи и вверх до поля в первой записи (строке) таблицы;
· Вниз - начиная с поля текущей записи и вниз до поля в последней записи таблицы;
· Все - поиск информации по всему текущему полю, либо во всей базе (последний вариант наиболее надежный, но самый медленный).
3. Раскрывающийся список Совпадение может принимать значения, которые определяют тип сравнения данных с образцом, введенным для поиска. Значения, которые может принимать это поле следующие:
· Поля целиком (устанавливается по умолчанию) - искомое значение должно полностью совпадать со значением, введенным в поле Образец;
· С начала поля - при выборе этого значения поиск завершится успешно, если будут найдены данные, начинающиеся со значения, введенного в поле Образец (например, при поиске в таблице, если установлен этот параметр, необязательно в поле Образец набирать полностью значение всего поля, достаточно напечатать только несколько первых букв);
· С любой частью поля - поиск будет проведен успешно, если значение поля Образец совпадет с любой частью просматриваемых при поиске данных (например, для заданного образца поиска «Петр» в поле Фамилия таблицы «Сотрудники» БД «Борей» будут верными результаты: Петрова, Петрищева, Запетровский и т.д.)
4. Флажок С учетом регистра - позволяет включить режим поиска, при котором MS Access будет различать прописные и строчные буквы (например, в этом режиме фамилии ПЕТРОВ и Петров считаются разными, и результат поиска будет зависеть от того, как записать ее в поле Образец).
5. Флажок С учетом формата полей включает режим поиска, при котором различаются форматы отображения данных (например, если при поиске в таблице «Сотрудники» по дате рождения ввести в поле Образец11.03.65 в кратком формате, то дата 11-мар-1965, отображаемая в среднем формате даты, не будет найдена).
Для начала поиска вводим требуемое значение в поле Образец и нажимаем кнопку Найти далее. В случае успешного поиска MS Access выделит найденное значение в таблице. В случае неудачи выведет окно с сообщением (рис. 4.9).
рис. 4.9. Окно сообщения при неудачном поиске данных |
Иногда при поиске информации достоверно неизвестно, какой образец для поиска нужно задать. Так, например, в таблице «Сотрудники» в поле Фамилия имеются похожие записи (Белова и Берова). Чтобы облегчить работу по заданию условий поиска, MS Access оснащен функциями, позволяющими выполнять подстановку символов или шаблонов в поле Образец. Так в нашем примере, для поиска похожих фамилий можно в поле Образец записать следующий текст:
Бе[лр]ова
Это означает, что будет произведен поиск заданного образца, в котором третья буква может быть либо Л, либо Р.
Эту задачу можно решить несколько иначе, применив более легкий для набора шаблон образца для поиска, но менее достоверный:
Бе?ова
В этом случае ? означает, что в третьей позиции может стоять любой символ (в том числе и нужные нам Л или Р). Но в данном случае поиск может затянуться, так как в базе могут находиться и другие данные, удовлетворяющие этому условию поиска.
В таблице 4.1 приведено описание других подстановочных символов.
Таблица 4.1.