какие способы поиска данных в бд существуют

Какие способы поиска данных в бд существуют

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

Фильтры и запросы позволяют отбирать записи, которые удовлетворяют условиям поиска. Условия поиска записей создаются с использованием операторов сравнения (=, >, (больше), = (больше или равно), (не равно).

Для текстовых данных возможны следующие операции сравнения:
равно (сравниваются все символы);
начинается с и не начинается с (сравниваются первые символы);
заканчивается на и не заканчивается на (сравниваются последние символы);
содержит и не содержит (сравниваются последовательности символов).

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

Простые фильтры и запросы содержат условие поиска записей только для одного поля. Если в базе данных «Компьютеры» ввести условие поиска >= 256 для поля «Память», то будут найдены и оставлены на экране три записи базы данных (табл. 5.5).

Таблица 5.5. Результаты поиска в базе данных «Компьютеры» с использованием простого фильтра
A B C D
1 Тип компьютера Процессор Память
4 3 Настольный Pentium 4 256
2 1 Настольный Pentium 4 512
3 2 Портативный Pentium 3 256

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

Например, если в базе данных «Компьютеры» ввести составной фильтр, состоящий из двух условий (для поля «Тип компьютера» условие равно Настольный и для поля «Память» условие = 256), то будет найдена и оставлена на экране одна запись базы данных (табл. 5.6).

Таблица 5.6. Результаты поиска в базе данных «Компьютеры» с использованием составного фильтра
A B C D
1 Тип компьютера Процессор Память
4 3 Настольный Pentium 4 256

1. Какие операции сравнения могут использоваться для числовых данных? Для текстовых данных?

2. В чем состоит различие между простыми и составными фильтрами и запросами?

5.9. Задание с кратким ответом. Какие записи базы данных «Компьютеры» (см. табл. 4.2) будут найдены после задания составного фильтра, содержащего условия:
— для поля «Тип компьютера» условие равно Портативный;
— для поля «Процессор» условие содержит 4;
— для поля «Память» условие >= 256?

5.10. Практическое задание. В электронных таблицах осуществить поиск в базе данных «Компьютеры» (см. табл. 5.2) в поле «Память» с помощью простого фильтра с условием поиска >= 256.

Источник

Поиск данных и объектов в базе данных MS SQL Server с помощью бесплатной утилиты dbForge Search

Описание общей потребности в поиске данных и объектов в базе данных

Достаточно часто может возникнуть ситуация, при которой нужно найти:

Сначала рассмотрим как можно осуществлять поиск данных и объектов в базе данных с помощью встроенных средств самой СУБД, а затем рассмотрим как это сделать с помощью бесплатной утилиты dbForge Search.

Поиск с помощью встроенных средств самой СУБД

Определить есть ли таблица Employee в базе данных можно с помощью следующего скрипта:

Результат может быть примерно такой:

Результат может быть примерно такой:

Как видно из результата, здесь подстроку “Project” содержат не только две таблицы Project и ProjectSkill, но и также некоторые первичные и внешние ключи.

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

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

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

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

Результат выполнения может быть таким:

Здесь выводятся имена таблиц и в каких столбцах хранится значение, содержащие подстроку “Ramiro”. А также количество найденных входов данной подстроки для найденной пары таблица-колонка.

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

Здесь будет выведен идентификатор, название, описание и полное определение объекта.

Поиск с помощью бесплатной утилиты dbForge Search

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

Для вызова этой утилиты в окне SSMS нажмите на кнопку .

Появится следующее окно поиска:

Обратите внимание на верхнюю панель (слева направо):

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

А именно будут доступны для выбора только таблицы, где и хранятся собственно сами данные:

Теперь как и раньше найдем все вхождения подстроки “Project” в названиях объектов:

Как видно, был выбран режим поиска по DDL-объектам, заполнено что ищем-строка “Project”, остальное все было по умолчанию.

При выделении найденного объекта внизу отображается код определения данного объекта или всего его родительского объекта.

Также можно переместить навигацию на найденный объект, щелкнув на кнопку :

Можно также сгруппировать найденные объекты по их типу:

Обратите внимание, что выводятся даже те таблицы, в которых есть поля, в именах которых содержится подстрока “Project”. Однако, напомним, что режим поиска можно менять: искать полное соответствие/частичное/учитывать регистр или нет.

Теперь найдем значение “Ramiro” по всем таблицам:

Обратите внимание, что внизу отображаются все строки, в которых содержится подстрока “Ramiro” выбранной таблицы Employee.

Также можно переместить навигацию к найденному объекту, нажав как и ранее на кнопку :

Таким образом мы можем искать нужные объекты и данные в базе данных.

Заключение

Были рассмотрены способы поиска как самих данных, так и объектов в базе данных как с помощью встроенных средств самой СУБД MS SQL Server, так и с помощью бесплатной утилиты dbForge Search.

Также от компании Devart есть и ряд других бесплатных готовых решений, полный список которых можно посмотреть здесь.

Источник

Поиск записей в базе данных Access

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

Примечание: Статья неприменима к веб-приложениям Access — новому типу баз данных, которые создаются в Access и публикуются в Интернете. Дополнительные сведения см. в теме «Создание приложения Access»

В этой статье

Просмотр всех записей

Для просмотра записей с Режим таблицы можно использовать кнопки навигации по записям в нижней части таблицы или формы.

1. Перейти к первой записи

2. Перейти к предыдущей записи

3. Поле текущей записи

4. Перейти к следующей записи

5. Перейти к последней записи

6. Открытие новой (пустой) записи

7. Индикатор фильтра

Для перемещения по одной записи можно также использовать клавишу TAB.

Переход к определенной записи

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

Чтобы перейти к записи, щелкните стрелку справа от кнопки «Перейти», а затем выберите запись из списка.

Примечание: Если вы знаете первые несколько символов записи, по которой нужно перейти, можно ввести их в поле «Перейти».

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

Поиск записи

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

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

Это эффективное решение для поиска определенной записи, если она соответствует определенным условиям, таким как условия поиска и операторы сравнения, такие как «равно» или «содержит».

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

Откройте таблицу или форму, а затем щелкните поле, в которое нужно в поиске.

На вкладке «Главная» в группе «Найти» нажмите кнопку «Найти».

Появится диалоговое окно «Поиск и замена» с выбранной вкладке «Найти».

В поле «Найти что» введите значение, по которому нужно искать.

Чтобы изменить поле для поиска или поиска по всей таблице, выберите соответствующий вариант в списке «Поиск в».

Совет: Список «Совпадение» представляет оператор сравнения (например, «равно» или «содержит»). Чтобы расширить область поиска, в списке «Совпадение» выберите «С любой частью поля».

В списке Поиск выберите вариант Всеи нажмите кнопку Найти далее.

Когда выделен элемент, для которого вы ищете, нажмите кнопку «Отмена» в диалоговом окне «Найти и заменить», чтобы закрыть диалоговое окно. Выделяются записи, которые соответствуют вашим условиям

Фильтрация для отображения определенных записей

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

Чтобы применить фильтр, основанный на выборе, откройте таблицу или форму.

Чтобы убедиться в том, что таблица или форма еще не отфильтровына, на вкладке «Главная» в группе «Фильтр сортировки &» нажмите кнопку «Дополнительные фильтры» и выберите команду «Очистить все фильтры», если эта команда доступна.

Читайте также:  какие туфли подойдут к бордовому платью ниже колена

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

На вкладке Главная в группе Сортировка и фильтр нажмите кнопку Выделение и щелкните нужный фильтр.

Чтобы отфильтровать другие поля по выделенному фрагменту, повторите шаги 3 и 4.

Источник

Файловая система, поиск, сортировка информации в базах данных

Теория к заданию 4 из ЕГЭ по информатике

Программные средства информационных и коммуникационных технологий

Операционная система: назначение и функциональные возможности

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

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

Сейчас на IBM-совместимые компьютеры устанавливаются операционные системы Windows и Linux, а на персональные компьютеры Macintosh — операционная система Mac OS.

Современные операционные системы имеют сложную структуру, каждый элемент которой выполняет определенные функции по управлению компьютером:

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

— развитой графический пользовательский интерфейс;

— использование всех возможностей современных микропроцессоров;

— устойчивость в работе и защищенность информации;

— поддержку всех видов периферийного оборудования;

— поддержку сетевых функций:

Графический интерфейс

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

Важнейший элемент графического интерфейса — окна. Существуют следующие виды окон: окна папок, окна приложений, окна документов, окна справочной системы. Основными элементами окна являются:

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

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

Файлы и файловые системы

Вся имеющаяся на компьютере информация хранится в виде файлов. Файл — это упорядоченная, снабженная именем совокупность данных на внешнем носителе, которую операционная система обрабатывает как единое целое. Имя файла состоит из двух частей: собственно имени файла и расширения (типа файла). В различных операционных системах приняты различные форматы имен файлов. В операционной системе MS DOS имя файла может состоять не более чем из восьми символов, а расширение — не более чем из трех символов. При этом набор допустимых символов в имени ограничен. В операционной системе Windows имя может иметь длину до 255 символов, содержать символы Unicode, точки и пробелы внутри имени. Для удобства хранения и поиска файлы могут объединяться в папки (каталоги). Папки могут быть вложены друг в друга, образуя многоуровневую древовидную структуру.

Порядок хранения файлов на носителе информации определяется используемой файловой системой.

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

Для операционных систем семейства DOS и ранних версий Windows использовалась файловая система FAT. FAT — таблица размещения файлов, в которой компьютер запоминает адреса записанных файлов. Если надо считать какой-либо файл, то компьютер по его имени находит в FAT-таблице его адрес и переводит в нужное место магнитную головку дисковода для его считывания. Если таблица размещения файлов будет повреждена, то информация, имевшаяся на диске, будет утрачена. Физически она там, конечно, останется, но к ней нельзя будет обратиться. Поэтому FAT для надежности дублируется. При любых повреждениях компьютер по копии сам восстанавливает эту таблицу. Адрес файла в таблице FAT16 записывается двухбайтным числом (16 битов), т. е. всего имеется 2 16 разных адресов. Значит, максимальное число файлов на диске — 65536.

Современные жесткие диски имеют очень большие объемы, и им не хватает такого количества адресов. В таблице FAT32 адрес записывается четырехбайтным числом. Понятно, что адресов в этом случае больше. В современных версиях операционной системы Windows наиболее часто используется файловая система NTFS, которая позволяет обеспечить разделение доступа к информации, криптографирование файлов и повышение устойчивости к ошибкам. В процессе форматирования диска под систему NTFS записывается таблица адресов файлов — MFT.

Для однозначного определения местоположения любого файла диск должен иметь четкую физическую и логическую структуру. Эта структура создается в процессе форматирования диска.

Форматирование разделяется на низкоуровневое (физическое) и форматирование верхнего уровня (логическое).

При низкоуровневом форматировании диск разбивается на дорожки — концентрические окружности, пронумерованные от края к центру. Внешняя дорожка (нулевая) содержит служебную информацию.

Жесткие диски, для увеличения объема хранящейся информации, состоят из нескольких магнитных дисков, поверхности которых обслуживаются отдельными головками. Но условно считают, что это все же один диск, у которого не две стороны, а 8 или 16. Каждый из таких дисков тоже разбивается на дорожки. Дорожки с одинаковыми номерами называются цилиндром. Запись информации на диск идет по цилиндрам — от края (нулевого) к центру.

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

При форматировании верхнего уровня производятся следующие действия:

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

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

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

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

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

На жестком диске компьютера могут возникать физические дефекты и логические ошибки. Физические ошибки (дефекты) — это нарушения поверхности жесткого диска. Обычно они связаны с естественным износом диска.

Логические ошибки — это нарушения в файловой структуре.

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

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

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

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

С помощью специальных программ — файловых менеджеров — над файлами можно производить следующие операции: копирование, перемещение, удаление, переименование. Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность допустимых в именах файлов символов, а также символы «?» и «*». Символ «?» означает один произвольный символ. Символ «*» означает любую последовательность символов произвольной длины (в том числе пустую).

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

Читайте также:  какие счетчики электроэнергии подлежат замене с 2020 года и какие должны быть

В зависимости от используемых алгоритмов архивации данных различают такие форматы архивных файлов: ZIP, RAR, ARJ, CAB, LZH, ACE, ISO и др. Примерами архиваторов являются программы WinZIP, WinRAR, 7-ZIP, Winace, PowerArchiver, ArjFolder, BitZipper, bzip2 и др.

Примеры решения задач

Решение. Учитывая, что размер одного сектора 512 байтов, имеем: 512 ⋅ 32 ⋅ 2 28 = 2 9 ⋅ 2 5 ⋅ 2 28 = 2 42 = 2 2 ⋅ 2 40 байт = 4 Тбайт.

Пример 2. Размер одного кластера диска 1024 байта. На диск записали файлы размером 2750 байт и 324 Кбайт. Сколько кластеров займут эти файлы?

Решение. Файл размером 2750 байт должен занять 2750 : 1024 = 2,68 кластера. Поскольку файлы могут занимать только целое число кластеров, нужно округлить 2,68 до ближайшего большего целого числа кластеров — 3.

Файл размером 324 Кбайт займет 324 ⋅ 2 10 : 1024 = 324 кластера.

Вместе эти два файла займут 3 + 324 = 327 кластеров.

Ответ: 327 кластеров.

Пример 3. На диске имеется следующая структура папок и файлов:

Записать полные имена всех файлов.

С:\Фото\Мой класс\Новый год.jpg;

Пример 4. В некотором каталоге хранился файл letter1.doc. После того как в этом каталоге создали подкаталог и переместили в него файл letter1.doc, полное имя файла стало D:\Work\Doc\ Letter\letter1.doc. Каково было полное имя файла до перемещения?

Решение. По полному имени файла видно, что он находится в каталоге Letter, следовательно, Letter и есть вновь созданный каталог. Каталог Letter находится в каталоге с полным именем D:\Work\Doc. По условию задачи файл изначально хранился в том каталоге, где был создан подкаталог Letter. Следовательно, полное имя файла было D:\Work\Doc\letter1.doc.

1) letter.c 2) mletter1.c 3) letr.cpp 4) _letter.cpp

Решение. Поскольку в начале маски стоит знак «?» перед буквой «l», в имени буква «l» должна стоять на втором месте. Следовательно, варианты 1) и 3) не подходят. В расширении после буквы «с» тоже стоит знак «?», значит, после нее должен находиться непустой символ. Этому условию удовлетворяет вариант 4).

Оперирование информационными объектами с использованием знаний о возможностях информационных и коммуникационных технологий

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

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

Технологии и средства защиты информации от разрушения и несанкционированного доступа

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

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

Защита от хищения информации, от нелегального копирования и использования программ осуществляется с помощью специальных программных и аппаратных средств:

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

Существует большое число различных классификаций вирусов:

1. По среде обитания:

2. По степени опасности:

3. По особенностям алгоритма:

Для борьбы с вирусами разрабатываются антивирусные программы.

Виды антивирусных программ:

Антивирусные средства являются самыми распространенными средствами защиты информации.

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

Для обеспечения большей надежности хранения данных на жестких дисках используются RAID-массивы (Redundant Arrays of Independent Disks — избыточный массив независимых дисков). Несколько жестких дисков подключаются к RAID-контроллеру, который рассматривает их как единый логический носитель информации. При записи информации она дублируется и сохраняется на нескольких дисках одновременно, поэтому при выходе из строя одного из дисков данные не теряются.

Технология хранения, поиска и сортировки информации в базах данных

Структура базы данных (записи и поля)

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

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

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

Иерархическая БД. Элементы в записи упорядочены. Один элемент считается главным, остальные — подчиненными. Примером такой структуры может быть дерево каталогов на диске или генеалогическое дерево. Служба имен доменов в Интернет (DNS) также является собранием иерархических баз данных для перевода имен доменов Интернет из символов в числовые адреса протокола передачи данных IP. Поиск какого-либо элемента данных в такой системе может оказаться довольно трудоемким из-за необходимости последовательно проходить несколько иерархических уровней.

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

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

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

Основными свойствами любого поля являются следующие:

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

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

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

Формат. Устанавливает формат данных.

Тип поля определяется типом данных, которые оно содержит.

Основные типы полей:

Текстовое поле — для ввода текста. Максимальный размер — 255 символов.

Числовое поле — для ввода числовых данных.

Дата/время — для ввода даты и времени в определенном формате.

Логическое поле — для ввода логических данных, имеющих только два значения (ДА — 1, НЕТ — 0). Его длина всегда равна 1 байту.

Денежное поле — числа в денежном формате.

Поле объекта OLE — в этом поле можно хранить картинки, музыкальные клипы, видеозаписи.

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

Поле МЕМО — используется, если нужно вставить длинный текст. В него можно поместить до 65535 символов (64 Кбайт). Особенность поля в том, что сами данные хранятся не в нем, а в другом месте, — в поле хранится только указатель на то, где они расположены.

Гиперссылка — ссылки на информационный ресурс в Интернете.

Запись БД — это строка таблицы, содержащая набор значений свойств, размещенный в полях базы данных.

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

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

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

Для создания, наполнения и обработки баз данных разработаны специальные программные средства — системы управления базами данных (СУБД).

Примеры решения задач

Пример 1. В таблице представлен фрагмент базы данных о клиентах некоторой фирмы.

Код_Клиента Фамилия Адрес Телефон E-mail
К1216Р Карпов ул. Кирова, 25 2892316 [email protected]
М1347П Маслов ул. Королева, 12 7937847 [email protected]

Сколько полей и сколько записей в данной базе?

Решение. Поля — это столбцы базы данных, а записи — это строки. Следовательно, в данной базе 5 полей (Код_Клиента, Фамилия, Адрес, Телефон, E-mail) и 2 записи (о клиентах Карпове и Маслове).

Табличное и картотечное представление баз данных

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

Читайте также:  Тибетский чай как пить

Обычная форма представления записей базы данных — табличная. Эта форма особенно удобна при работе с БД в целом, групповых операциях над записями, генерации отчетов (выборок из БД) или поиском записей. Конкретные столбцы в отчете и их порядок может задавать пользователь. Однако в ряде случаев, например, при вводе и редактировании данных, предпочтительной и более удобной будет картотечная форма представления.

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

Сортировка и отбор записей

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

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

В СУБД Access сортировка осуществляется только по одному полю. Каждая новая сортировка отменяет результаты предыдущей. Вложенные сортировки выполняются с помощью запросов.

СУБД Access позволяет производить поиск записей, в которых значения определенного поля полностью или частично совпадают с заданной величиной. В СУБД Access 2007 поиск информации в таблице осуществляется следующим образом. Установить курсор в поле, в котором будет выполняться поиск, открыть на ленте вкладку Главная и в группе Найти выбрать команду Найти . Откроется окно Поиск и замена. В поле Образец надо ввести значение, которое следует найти. Для этого можно использовать подстановочные знаки (маску):

«*» — любой символ в начале или в конце;

«?» — любой символ в любом месте;

«[ ]» — любой символ из заключенных в скобки (например, маска b[ae]ll найдет ball, bell, но не bill);

«!» — любой символ, кроме заключенных в скобки (например, b[!ae]ll найдет bill, bull, но не ball, bell);

«-» — любой символ из диапазона (например, b[a-c]d найдет bad, bbd, bcd);

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

Вкладка Замена этого окна позволяет не только найти какую-либо информацию, но и заменить ее на другую.

Выбор из базы тех записей, которые удовлетворяют требованиям пользователя, также осуществляется с помощью фильтров. Для задания фильтра нужно открыть на ленте вкладку Главная и в группе Сортировка и фильтр выбрать команду Фильтр. Команды этой группы Выделение и Дополнительно предлагают несколько дополнительных видов фильтров. Например, фильтр «по выделенному» позволяет отобрать записи, содержащие выделенный фрагмент; фильтр «исключить выделенное» скрывает записи, содержащие выделенный фрагмент; расширенный фильтр позволяет задать более сложные условия отбора записей, а также сортировку по нескольким параметрам.

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

Использование различных способов формирования запросов к базам данных

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

Для создания запросов к БД существует специальный язык запросов SQL (Structured Query Language) — структурированный язык запросов. Вместо него в СУБД Access есть простое средство, которое называется бланком запроса. С его помощью можно сформировать запрос простыми приемами, перетаскивая элементы запроса между окнами.

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

Последовательность создания простого запроса на выборку в СУБД Access 2007 следующая. На ленте нужно открыть вкладку Создание и в группе Другие выбрать команду Конструктор запросов. При этом на ленте появится вспомогательная вкладка Работа с запросами/Конструктор. Также программа выведет бланк запроса и окно Добавление таблицы. Сначала надо задать таблицы или запросы, на которых будет основываться новый запрос. Это выполняется указанием имени таблицы (запроса) и щелчком на кнопке Добавить в окне Добавление таблицы.

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

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

Флажок Вывод на экран указывает, надо ли выводить поле на экран.

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

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

Пользователь, не имевший отношения к созданию базы, не может изменить параметры, по которым делается запрос на выборку. Но часто пользователю надо предоставить возможность выбора того, что он хочет найти в таблицах БД. Для этого существует специальный запрос — запрос с параметром. В строке Условие отбора бланка запроса в нужном поле надо ввести команду LIKE [] языка SQL

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

Например, имеется БД, содержащая сведения о футболистах разных клубов: Фамилия, Имя, Дата Рождения, Рост, Вес, Клуб, Специализация. Требуется выбрать только спортсменов, принадлежащих одному конкретному клубу. А к какому именно клубу — должен выбирать пользователь. При формировании запроса с помощью бланка в строке Условие отбора поля Клуб нужно записать команду LIKE [Введите название клуба]. Тогда при запуске запроса на экран будет выведено окно с текстом Введите название клуба, полем для ввода и кнопкой ОК. Пользователь должен ввести название клуба, например Спартак, и щелкнуть на кнопке ОК. После этого появится результирующая таблица, содержащая записи о спортсменах клуба Спартак.

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

Для создания запроса, производящего вычисления, служит тот же самый бланк запроса. Разница в том, что в одном из столбцов записывают формулу. В нее входят заключенные в квадратные скобки названия полей, участвующих в расчете, а также знаки математических операций. Если формула большая, то с помощью клавиш [Shift]+[F2] можно открыть вспомогательное окно Область ввода. В него можно ввести сколь угодно длинную формулу, а затем щелчком на кнопке ОК перенести ее в бланк запроса по образцу.

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

Результативность : [Забито] / [Игры]

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

Примеры решения задач

Пример 1. К нескольким файлам применялись различные архиваторы и в таблицу записывались исходный размер файлов и размер архивов. Ниже приведен фрагмент этой таблицы:

Имя файла Размер ZIP RAR ARJ
Text1.doc 285 114 106 112
Ref.doc 843 42 34 41

Требуется отобрать файлы, исходный размер которых был больше 2 Мбайт и при использовании WinRAR уменьшился более чем в 4 раза. Какое условие нужно использовать для формирования запроса?

Решение. Исходя из условия задачи, в условии запроса должна использоваться логическая операция «И» (логическое умножение), поэтому вариант 3) не подходит. Кроме того, надо учесть, что 1 Мбайт = 1024 байта. Запрос с условием 1) может отобрать записи о файлах с исходным размером менее 2 Мбайт, следовательно, также не подходит. Правильный вариант — 4).

Пример 2. В таблице представлен фрагмент базы данных, содержащей информацию о странах, их площади (поле Площадь), численности населения (поле Население), расположении в части света (поле ЧС):

Страна Столица Площадь Население ЧС
1 Бельгия Брюссель 30,5 10289 Европа
2 Коста-Рика Сан-Хосе 51,1 3896 Северная Америка
3 Израиль Тель-Авив 20,8 6116 Азия
4 Дания Копенгаген 43,1 5384 Европа

Какое условие нужно использовать для формирования запроса, отбирающего все европейские страны площадью менее 30 тыс. кв. км с численностью населения более 10 тыс. человек?

Решение. Исходя из условия задачи, в условии запроса должна использоваться логическая операция «И» (логическое умножение), поэтому варианты 2) и 3) не подходят. Условие 1) также неверно, т. к. в нем не задано расположение страны (Европа), т. е. по такому запросу будут отобраны страны, расположенные в Африке, Азии и т. д. Правильный вариант 4).

Источник

Онлайн портал