CFA LogoCFA Logo Computer
Новости Статьи Магазин Драйвера Контакты
Новости
RSS канал новостей
В конце марта компания ASRock анонсировала фирменную линейку графических ускорителей Phantom Gaming. ...
Компания Huawei продолжает заниматься расширением фирменной линейки смартфонов Y Series. Очередное ...
Компания Antec в своем очередном пресс-релизе анонсировала поставки фирменной серии блоков питания ...
Компания Thermalright отчиталась о готовности нового высокопроизводительного процессорного кулера ...
Компания Biostar сообщает в официальном пресс-релизе о готовности флагманской материнской платы ...
Самое интересное
Программаторы 25 SPI FLASH Адаптеры Optibay HDD Caddy Драйвера nVidia GeForce Драйвера AMD Radeon HD Игры на DVD Сравнение видеокарт Сравнение процессоров

АРХИВ СТАТЕЙ ЖУРНАЛА «МОЙ КОМПЬЮТЕР» ЗА 2003 ГОД

Доступные таблицы

Александр ЧАБАН ahcaban@ukr.net

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

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

Постановка задачи

Необходимо проанализировать данные в таблице: выстроить в порядке возрастания по какому-либо значению, проверить уникальность или подсчитать количество повторений в столбце. Вы наверняка знаете, как упорядочить (отсортировать по возрастанию или убыванию) любой из столбцов таблицы с помощью Word (пункт меню Таблица > Сортировка текста). А вот проверить уникальность записей даже с помощью программы на VBA будет непросто. Загружаем Access! Быстро отказываемся открывать чужие проекты типа «Борей» и создаем пока пустую базу данных (Рис. 1).

Добавить в проект новую таблицу тоже не проблема. Пожалуй, воспользуемся конструктором. Остальные способы создания таблиц, представленные в списке, нам не подойдут (Рис. 2).

Рис. 1. Создание базы   Рис. 2. Сздание таблиц

Имена

Привычка давать осмысленные имена файлам будет особенно полезна при проектировании базы. Вам предстоит придумывать имена большому количеству объектов. Имя таблицы должно отображать суть хранимых в ней данных, а также функцию, которую эта таблица выполняет (иногда в именах временных таблиц используют приставку ~). Названия полей таблиц набирайте латинскими буквами. Есть соглашения о формате имен, которого должен придерживаться программист, если готовит свой проект для коммерческого использования и предполагает его доработку другими программистами. Эти соглашения разработаны Лежинским и получили широкое применение во многих программных средах Microsoft, поскольку упрощают читаемость программного кода и способствуют быстрому изучению структуры базы даже без детальной документации. Достаточно знать, что длинное имя поля на русском языке и с разделителями (пробелами) нежелательно, но возможно. Чем короче имя таблицы, тем проще писать по памяти SQL-запросы, но такие имена не информативны.

Форматы данных

Для нашего случая будет достаточно только одной таблицы. Но прежде чем ее создавать, определимся с форматом данных и порядком следования столбцов. При импорте из таблицы Word в рабочий лист Excel последний пытается догадаться о формате предложенных данных. Иногда неверно. В Access этот процесс контролируется полностью, тем он и отличается от остальных продуктов Рис. 3. Форматы данныхMS Office.

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

Текстовое поле сразу делаем максимальным (255 символов).

Число — целое либо с плавающей точкой. Диапазон легко узнать, нажав на F1 (справка в Access достаточно полно освещает основные вопросы).

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

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

Любая вносимая информация автоматически проверяется на соответствие указанному типу данных. Можно усугубить контроль дополнительными условиями (условие на значение, например < или > заданного значения даты #1.01.2003#) и маской ввода (00.00.0000).

Сохранение таблицы

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

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

Импорт данных

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

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

Если вы оставили столбец Код, то теперь он вам мешает. Чтобы скрыть столбец, достаточно выбрать пункт меню Формат > Скрыть столбец. Если скрытые столбцы необходимо вернуть, в том же пункте меню Формат есть пункт Отобразить столбцы.

2) Для успешного импорта всех данных без потерь следует учесть одну особенность Access. Символ кавычки («) вначале и в конце ячейки таблицы воспринимается как служебный и усекается. Чтобы этого избежать, следует заменить их (Правка > Заменить) на любой другой символ, не используемый в тексте (например ~).

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

a) абзац

b) табулятор

c) разрыв строки

4) Необходимо отключить нумерацию, иначе цифры будут внесены вместе с данными.

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

Для внесения данных в таблицу Access необходимо:

1. Выделить таблицу с данными в Word (Таблица > Выделить таблицу).

2. Скопировать таблицу (Правка > Копировать).

3. Открыть таблицу в Access.

4. Выделить таблицу (Правка > Выделить записи).

5. Вставить данные (Правка > Вставить).

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

Запросы SQL

Запрос SQL — очень гибкий и удобный инструмент обработки данных. Конструктор запросов в Access позволяет создать практически любой запрос, для этого необязательно изучать язык SQL.

Теперь можно провести детальный анализ данных из нашей таблицы, используя Групповые операции (Рис. 4, 5; Табл. 1).

Рис. 4. Групповые операции   Рис. 5. Групповые операции

Конструктор позволяет просматривать запрос тремя разными способами — непосредственно конструктор, режим SQL и набор данных (таблица).

Если вы все сделали правильно, в режиме SQL должно получится что-то вроде этого:

Таким образом, стандартные процедуры и конструктор для построения запроса позволяют быстро выяснить количество повторений в таблице. Если для столбца Count указать условие выбора > 1, то запрос вернет только те значения, которые встречаются больше одного раза.

Таблица 1

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

Экспорт данных

Желание воспользоваться полученными результатами вполне законно. Однако на этом пути тоже есть свои трудности.

Шрифт, используемый по умолчанию, некорректно копируется из Access в Word. Устранить проблему можно путем замены шрифта для открытой таблицы (Формат > Шрифт).

Импортированная таким образом в Word таблица отображается несколько странно: данные как бы усекаются. Устранить проблему можно изменением свойств таблицы. Таблицу необходимо выделить, а затем для пункта меню Таблица > Высота и ширина ячейки... вкладки Строка указать автоматическую высоту строк (Рис. 6).

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

Рис. 6. Указание высоты строк   Рис. 7. Обрамление для ячеек

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

Рекомендуем ещё прочитать:






Данную страницу никто не комментировал. Вы можете стать первым.

Ваше имя:
Ваша почта:

RSS
Комментарий:
Введите символы или вычислите пример: *
captcha
Обновить





Хостинг на серверах в Украине, США и Германии. © sector.biz.ua 2006-2015 design by Vadim Popov