Здавалка
Главная | Обратная связь

Свойства полей базы данных



Поля базы данных не просто определяют структуру базы — они еще определяют групповые свойства данных, записываемых в ячейки, принадлежащие каждому из полей. Ниже перечислены основные свойства полей таблиц баз данных на примере СУБД Microsoft Access.

  • Имя поля — определяет, как следует обращаться к данным этого поля при автоматических операциях с базой (по умолчанию имена полей используются в качестве заголовков столбцов таблиц).
  • Тип поля — определяет тип данных, которые могут содержаться в данном поле.
  • Размер поля — определяет предельную длину (в символах) данных, которые могут размещаться в данном поле.
  • Формат поля — определяет способ форматирования данных в ячейках, принадлежащих полю.
  • Маска ввода — определяет форму, в которой вводятся данные в поле (средство автоматизации ввода данных).
  • Подпись — определяет заголовок столбца таблицы для данного поля (если подпись не указана, то в качестве заголовка столбца используется свойство Имя поля).
  • Значение по умолчанию — то значение, которое вводится в ячейки поля автоматически (средство автоматизации ввода данных).
  • Условие на значение — ограничение, используемое для проверки правильности ввода данных (средство автоматизации ввода, которое используется, как правило, для данных, имеющих числовой тип, денежный тип или тип даты).
  • Сообщение об ошибке — текстовое сообщение, которое выдается автоматически при попытке ввода в поле ошибочных данных (проверка ошибочности выполняется автоматически, если задано свойство Условие на значение).
  • Обязательное поле — свойство, определяющее обязательность заполнения данного поля при наполнении базы;
  • Пустые строки — свойство, разрешающее ввод пустых строковых данных (от свойства Обязательное поле отличается тем, что относится не ко всем типам данных, а лишь к некоторым, например к текстовым).
  • Индексированное поле — если поле обладает этим свойством, все операции, связанные с поиском или сортировкой записей по значению, хранящемуся в данном поле, существенно ускоряются. Кроме того, для индексированных полей можно сделать так, что значения в записях будут проверяться по этому полю на наличие повторов, что позволяет автоматически исключить дублирование данных.

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

Типы данных

  • Таблицы баз данных, как правило, допускают работу с большим количеством разных типов данных. Так, например, базы данных Microsoft Access работают со следующими типами данных.
  • Текстовый — тип данных, используемый для хранения обычного неформатированного текста ограниченного размера (до 255 символов).
  • Мемо — специальный тип данных для хранения больших объемов текста (до 65 535 символов). Физически текст не хранится в поле. Он хранится в другом месте базы данных, а в поле хранится указатель на него, но для пользователя такое разделение заметно не всегда.
  • Числовой — тип данных для хранения действительных чисел.
  • Дата/время — тип данных для хранения календарных дат и текущего времени.
  • Денежный — тип данных для хранения денежных сумм. Теоретически, для их записи можно было бы пользоваться и полями числового типа, но для денежных сумм есть некоторые особенности (например, связанные с правилами округления), которые делают более удобным использование специального типа данных, а не настройку числового типа.
  • Счетчик — специальный тип данных для уникальных (не повторяющихся в поле) натуральных чисел с автоматическим наращиванием. Естественное использование — для порядковой нумерации записей
  • Логический — тип для хранения логических данных (могут принимать только два значения, например Да или Нет).
  • Поле объекта OLE — специальный тип данных, предназначенный для хранения объектов OLE, например мультимедийных. Реально, конечно, такие объекты в таблице не хранятся. Как и в случае полей МЕМО, они хранятся в другом месте внутренней структуры файла базы данных, а в таблице хранятся только указатели на них (иначе работа с таблицами была бы чрезвычайно замедленной).
  • Гиперссылка — специальное поле для хранения адресов URL Web-объектов Интернета. При щелчке на ссылке автоматически происходит запуск браузера и воспроизведение объекта в его окне.
  • Мастер подстановок — это не специальный тип данных. Это объект, настройкой которого можно автоматизировать ввод в данных поле так, чтобы не вводить их вручную, а выбирать из раскрывающегося списка.
Объект Описание
Таблица Двухмерный объект, состоящий из строк и столбцов, который используется для хранения данных в реляционной базе данных. В каждой таблице хранится информация об одном из типов объектов, моделируемых базой данных. Например, в базе данных образовательного учреждения одна таблица может содержать сведения о преподавателях, вторая — о студентах, а третья — о расписании
Тип данных Атрибут, задающий тип информации, которая может храниться в етолб|.е, параметре или переменной. SQL Server поддерживает несколько системных типов данных; в дополнение к ним разрешается создавать пользовательские типы данных
Представление Объект БД, на который в SQL-операторах можно ссылаться так же, как на таблицу. Представления определяются с помощью SQL-операторов и являются аналогами объектов, содержащих результирующие наборы, получаемые при выполнении этих операторов
Хранимая Откомпилированный набор операторов Тransact-SQL. процедура хранимый под определенным именем и обрабатываемый как единое целое. SQL Server предоставляет хранимые процедуры для управления SQL Server и вывода сведений о БД и пользователях. Они называются системными хранимыми процедурами
Функция Фрагмент кода, действующий как единая логическая сущность. Функцию можно вызвать по имени, при этом разрешается задать ряд необязательных входных параметров. Она возвращает сведения о состоянии и необязательные выходные значения. Функции поддерживаются многими языками программирования, в том числе С, Visual Basic и Transact-SQL. В TransactSQL имеется ряд встроенных функций, которые изменить невозможно, а также поддерживаются функции, которые создают и корректируют пользователи
Индекс Объект реляционной БД, обеспечивающий быстрый доступ к строкам таблицы на основе значений ключа, а так же уникальность строк в таблице. SQL Server поддерживает как кластерные, так и некластерные индексы. Первичный ключ таблицы индексируется автоматически. При полнотекстовом поиске сведения о ключевых словах и их расположении в данном столбце хранятся в полнотекстовом индексе
Ограничение Свойство, назначаемое столбцу таблицы, которое позволяет предотвратить занесение недопустимых данных в столбец. Например, ограничения UNIQUE или PRIMARY_KEYпредотвращают занесение значений, дублирующих существующие. Ограничение CHECK предотвращает занесение значения, не соответствующего критерию поиска, a NOT NULL — пустого значения
Правило Объект БД, связанный со столбцами или с пользовательскими типами данных, который задает значения данных, приемлемые в данном столбце. Лучше использовать ограничения CHECK, которые предоставляют ту же самую функциональность и соответствуют стандарту SQL-92
Умолчание Значение, автоматически присваиваемое системой данным, параметру, режиму сопоставления или имени, если оно не задано пользователем. Также определяет действие, автоматически выполняемое при конкретных событиях в отсутствие действий, заданных пользователем
Триггер Хранимая процедура, исполняемая при модификации данных в заданной таблице. Триггеры часто создают для поддержки ссылочной целостности или согласованности логически связанных данных в различных таблицах

 

СТРУКТУРА БАЗЫ ДАННЫХ

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

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

 

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

 

ТАБЛИЦЫ. СОЗДАНИЕ ТАБЛИЦ

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

Создание таблицы состоит в задании ее полей и назначении их свойств. Оно начинается с щелчка на кнопке Создать в окне База данных.

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

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

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

 

 

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

5. Пункт Режим таблицы открывает заготовку, в которой все поля имеют формальные имена: Поле1, Поле2... и т. д. и один стандартный текстовый тип. Такую таблицу можно сразу наполнять информацией.

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

Для изменения свойств полей надо перейти в режим Конструктор щелчком на кнопке Вид. Чтобы вставить новое поле, надо установить указатель мыши на маркер поля и нажать клавишу INSERT. Чтобы удалить поле, его надо выделить и нажать клавишу DELETE. Закончив создание структуры, можно щелкнуть на кнопке Вид и перейти в Режим таблицы для заполнения ее данными.

ПРИЕМЫ РАБОТЫ С ТАБЛИЦАМИ БАЗ ДАННЫХ

Вызовем таблицу базы данных Борей

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

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

3. Щелчок правой кнопкой на выделенной записи открывает контекстное меню для операций с записью.

4. Маркер, находящийся в левом верхнем углу таблицы, - это маркер таблицы. Щелчок на нем выделяет всю таблицу, а правый щелчок открывает контекстное меню для операций с таблицей в целом.

5. Поля базы данных представлены в таблице столбцами. Каждый столбец имеет заголовок,

 

в котором записано имя поля или то значение, которое задано в свойстве Подпись.

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

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

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

 

 

55 (половина)

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

 

Операция сортировки данных используется всегда для удобства нахождения нужной информации. Когда на экране (или на бумаге) отображается таблица, гораздо легче найти нужную строку, если эти строки упорядочены. Вы привыкли к тому, что табличные данные упорядочены по алфавиту, по дате, по увеличению или уменьшению значений в столбцах, содержащих числа. Но в разных ситуациях мы хотели бы сортировать строки по разным признакам (столбцам таблицы). В идеале это должно выполняться легким движением руки. Именно так и позволяет делать Access. По умолчанию, когда таблица открывается в режиме Таблицы, она упорядочивается по значению ключевого поля. Если ключевое поле для таблицы не определено, записи выводятся в порядке их ввода в таблицу. Если нужно отсортировать записи по значению другого поля, достаточно установить курсор на любую строку соответствующего столбца и нажать одну из кнопок на панели инструментов: Сортировка по возрастанию (Sort Ascending) или Сортировка по убыванию (Sort Descending).

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

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

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

При сортировке в возрастающем порядке записи, содержащие пустые поля (с пустыми значениями), указываются в списке первыми.

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

При сохранении таблицы сохраняется и порядок ее сортировки.

Контекстное меню в режиме таблицы

Контекстное меню в режиме таблицы

Замечание

Порядок сортировки зависит от настроек языка, определенных в диалоговом окне Параметры (Options) при создании базы данных. Чтобы изменить эту настройку, необходимо выбрать в меню Сервис (Tools) команду Параметры (Options), открыть вкладку Общие (General) и в поле Порядок сортировки базы данных (New database sort order) выбрать нужный язык

Вся необходимая работа осуществляется в специальном окне Схема данных, которое открывается кнопкой на панели инструментов или командой Сервис → Схема данных.

Одновременно с открытием окна Схема данных открывается диалоговое окно Добавление таблицы, из которого выбираются таблицы, между которыми создаются связи.

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

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

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

После нажатия кнопки Создать между таблицами будет установлена связь Один ко многим

Назначение запросов.

 

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

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

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

Виды запросов.

Режим «Конструктор» – «ручное» создание запроса:

Можно создавать в режиме «Конструктор» – «ручное» создание запроса на основе одной или нескольких таблиц.

На вкладке «Запросы» нажимаем кнопку «Создать». Выбираем режим «Конструктор»;

Выбираем таблицу, связанный с запросом справочник или базу данных и нажимаем кнопку «Закрыть». Они, вместе со связкой по соответствующим полям, появятся в верхней части экрана создания Запроса – схема данных данного запроса (при наличии заранее заданной связки). Например, справочник «Цеха» и База данных «Личные карточки», связанные по полю «Цех».

Далее необходимо в колонках Запроса выбрать в каждом столбце:

таблицу

поле из таблицы

вид сортировки

и т.д.

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

Запуск запроса в работу – кнопка «Открыть».

Если не устраивает сортировка данных, можно ее осуществить с помощью выбора поля в столбце и нажатия кнопок <А-Я> или <Я-А> (см. выше – сортировка данных).

«S» - указание группировки по данному полю.

Режим «Простой запрос» –

( для показа суммирования в одной колонке):

На вкладке «Запросы» нажимаем кнопку «Создать». Выбираем режим «Конструктор»;

Выбираем таблицу или Запрос, указываем поля (все или выборочно).

Далее нужно указать: подсчет для всех или Итоги.

Если интересуют Итоги – нужно нажать на кнопку <Итоги>. Так как цифровых полей нет, то Access сам предложит вариант «Подсчет количества записей KartPers».

Необходимо включить флажок. Далее даем название таблице и получаем сумму персонала по цехам (на основе выше описанного сделанного в Конструкторе Запроса).

Режим «Перекрестный запрос» –

( для создания всевозможных подсчетов на базе Схемы данных):

Данный запрос строится на основании продуманных заранее взаимосвязей и, обычно, на основе сводной Базы данных.

Сначала необходимо выбрать базу данных. Обычно – основную. В работе с Кадрами - это БД «Личные карточки».

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

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

Режим «Повторяющиеся записи» –

( для повторов данных в таблицах):

Режим «Не имеющие подчиненных» –

( для показа записей, не имеющих связей):

Например, клиенты, не имеющие заказов.







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.