Какие существуют разновидности полей в текстовом процессоре

Обновлено: 04.07.2024

Вся информация в базе данных хранится в таблицах. Таблицы это обычные таблицы для хранения данных. Таблицы состоят из записей.

Запись это строка в таблице. Вся информация обрабатывается по записям.

Каждая запись состоит из полей. Поле это столбец таблицы. Каждое поле имеет три характеристики:

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

В SQL сервер используются следующие типы данных:

  • Битовые типы данных, которые содержат последовательности нулей и единиц: Binary (n) и Varbinary(n), где n длина. Длина содержимого полей типа Binary всегда равна n, разница заполняется пробелами. Varbinary размер поля равен n или меньшему;
  • Целочисленные типы данных - типы данных для хранения целых чисел (в скобках указан диапазон значений типа данных, примерно): Tinyint (0-255), Smallint (±2 15 ), Int (±2 31 ), Bigint (±2 63 );
  • Типы данных для хранения дробных чисел: Real семь знаков после запятой, Float(m) может хранить числа из m знаков, максимальное m=38, Decimal (m, n) дробные числа с m всего знаков и n после запятой;
  • Специальные типы данных: Bit - логический тип данных.является заменой логическому типу Boolean в Visual Basic, Text - тип для хранения больших объемов текста, одно поле может хранить до 2 Гб текста, Image - тип данных для хранения до 2Гб рисунков, RowGUID - уникальный идентификатор строки таблицы, SQL_Variant - аналогичен типу Variant в Visual Basic;
  • Типы данных даты и времени: Datetime (1 января 1753 года — 31 декабря 9999 года). SmallDatetime (от 1.01.1900 до 06.06.2079);
  • Денежные типы данных для хранения финансовой информации: Money (от -922 337 203 685 477,5808 до 922 337 203 685 477,5807), Smallmoney (от -214 748,3648 до 214 748,3647);
  • Автоматически обновляемые типы данных - аналоги счетчиков, но в данной роли они не используются: RowVersion уникальный идентификатор строки. TimeStamp - закодированное дата и время создания строки .

Создание таблиц

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

Таблицы создаются командой

  • < Имя таблицы > - имя создаваемой таблицы;
  • <Имя поля> - имена полей таблицы;
  • <Тип> - типы полей;
  • < IDENTITY NULL|NOT NULL> - поле счётчик.

Замечание: Если имя поля содержит пробел , то оно заключается в квадратные скобки.

Пример: Создать таблицу "Студенты", содержащую поля: Код студента (первичное поле связи, счётчик), ФИО, Адрес, Код специальности (вторичное поле связи):

Замечание: Если необходимо создать вычислимое поле , то в команде Create Table у вычислимого поля вместо типа данных нужно указать выражение .

Пример: рассчитать средний балл студента по трем его оценкам.

Замечание: Получение информации о таблице осуществляется применением команды: EXEC SP_HELP < Имя таблицы > . Удаление таблицы осуществляется командой: DROP TABLE < Имя таблицы > .

Заполнение таблиц

В SQL Server 2008 заполнение таблиц производится при помощи следующей команды:

где < Имя таблицы > - таблица , куда вводим данные, ( <Список полей> ) - список полей, куда вводим данные, если не указываем, то подразумевается заполнение всех полей, в списке полей поля указываются через запятую, ( <Значения полей> ) - значение полей через запятую.

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

Пример: Добавление записи имеющей следующие значения полей ФИО = Иванов, Адрес = Москва, Код специальности = 5 в таблицу "Студенты".

Удаление отдельных столбцов и отдельных строк из таблицы

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

где <Условие> - условия, которым удовлетворяют удаляемые записи. Если условия не указаны, то удаляются все строки таблицы. Если условия указаны, то удаляются записи, поля которых соответствуют условию.

Пример: Удалить записи из таблицы "Студенты", у которых поле Адрес = Москва.

Изменение данных в таблице

Для этого используется следующая команда :

Здесь <Имя поля1> , <Имя поля2> - имена изменяемых полей, <Выражение1> , <Выражение 2> - либо конкретные значения, либо NULL , либо операторы SELECT . Здесь SELECT применяется как функция .

<Условие> - условие, которым должны соответствовать записи, поля которых изменяем.

Пример: В таблице "Студенты" у студента Иванова А.А. поменять адрес Москва на Йошкар-Ола, а код специальности вместо 5 поставить 3.

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

Например: SET [Средний балл]= (Оценка1+ Оценка2+ Оценка3)/3) вычисляет поле "Средний балл" как среднее полей "Оценка1" , "Оценка2" и "Оценка3" . При этом поля "Оценка1" , "Оценка2" и "Оценка3" должны уже существовать и тип данных поля "Средний балл" должен быть с плавающей запятой (Например Real ).

Замечание: Если необходимо из таблицы удалить все записи, но сохранить ее структуру, для этого используют команду TRUNCATE TABLE < Имя таблицы > при этом все данные будут удалены, но сама таблица останется.

На этом мы заканчиваем рассмотрение таблиц. Дополнительную информацию можно найти в лабораторной работе №3.

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

Тип поля Описание Доступный тип данных поля
Простое поле Содержит данные, не основанные на формуле. Строка текста, Набор параметров, Два параметра, Изображение, Целое число, Число с плавающей точкой, Десятичное число, Валюта, Несколько строк текста, Дата и время, Поиск
Вычисляемое поле Содержит вычисления, в которых используются поля из текущей сущности или связанных дочерних сущностей. Строка текста, Набор параметров, Два параметра, Целое число, Десятичное число, Валюта, Дата и время.
Поле свертки Содержит агрегированное значение, вычисленное по записям, связанным с определенной записью, или значение, вычисленное по иерархии записей. Целое число, Десятичное число, Валюта, Дата и время

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

Набор параметров с выбором нескольких вариантов

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

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

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

  • Рабочие процессы, потоки бизнес-процессов, действия, диалоговые окна, бизнес-правила, диаграммы, поля сведения или вычисляемые поля.
  • Отчеты, соглашения об уровне обслуживания или правила маршрутизации.

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

Тип формы Доступность
Турбо-форма Да
Форма обновления Только для чтения (поле будет доступно, но не может быть изменено)
Форма предыдущей версии Нет
Форма группового редактирования Нет

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

Выберите "Изменить" для редактирования глобального набора параметров.

Можно изменять глобальный набор параметров, только если параметр "Настраиваемый" имеет значение "Да".

Выберите "Создать", чтобы создать новый глобальный набор параметров.

Набор параметров с выбором нескольких вариантов.

Дополнительные сведения см. в разделе Дополнительные сведения: Создание и изменение глобальных наборов параметров.

Поле "Клиент"

В предыдущих выпусках Dynamics 365 Customer Engagement (on-premises) несколько готовых сущностей, таких как "Обращение", "Интерес" и "Возможная сделка", содержали специальное поле поиска, представляющее клиента. С помощью этого поля поиска можно было выбрать одну из двух сущностей: организацию или контакт. С помощью этой новой возможности можно добавить поле "Клиент" в любую системную или настраиваемую сущность. Можно использовать поле "Клиент" в нескольких сущностях для отслеживания данных клиента таким же образом, как использовалось поле "Клиент" в сущностях "Обращение", "Интерес" и "Возможная сделка".

Рассмотрим следующий бизнес-сценарий. У компании имеется поставщик по страхованию. Вы используете Dynamics 365 Customer Engagement (on-premises) для управления вашими взаимодействиями с клиентами и унификации бизнес-процессов. Важно знать, является ли получатель политик или требований отдельным лицом или компанией. Для удовлетворения этого бизнес-требования можно создать две настраиваемых сущности: "Политики" и "Требования". Для получения и отслеживания требуемых сведений о клиентах, добавьте поле поиска "Клиент" в сущности "Политики" и "Требования", используя новую возможность поля "Клиент".

Параметры форматирования полей с одной строкой текста

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

В Dynamics 365 для планшетов единственным доступным поставщиком телефонии является Skype.

Параметры форматирования полей с целыми числами

В следующей таблице приводятся сведения о параметрах форматирования для полей с целыми числами.

Длительность следует вводить в следующем формате: "x мин.", "x ч" или "x дней". Часы и дни также можно вводить, используя десятичные числа, например "x.x ч" или "x.x дней".

Использование правильного типа числового поля

При выборе правильного типа числового поля для использования выбор типа Целое число или Валюта довольно очевиден. Делая выбор между типом Число с плавающей запятой или Десятичное число, следует быть более внимательными.

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

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

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

Использование полей валюты

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

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

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

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

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

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

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

Вариант Описание
Число десятичных знаков в ценах Это точность одной организации, используемая для цен в разделе Параметры > Администрирование > Системные параметры > Общие сведения.
Точность валюты Этот параметр применяет точность, определенную для валюты в записи.
Определенные значения точности — 0–4. Эти параметры позволяют задать определенную точность.

Различные типы поисков

При создании нового поля поиска создается новое отношение сущностей "многие-к-одному" (N:1) между сущностью, с которой выполняется работа, и значением Тип целевой записи, указанным для поиска. Дополнительные параметры настройки для данного отношения описаны в разделе Создании и изменение отношений сущностей. Однако все настраиваемые поиски могут ссылаться только на одну запись для одного типа целевой записи.

Следует помнить, что это поведение присуще не всем поискам. Существует несколько других типов системных поисков, как показано ниже.

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

Поля изображения

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

Организация * Статья Кампания
Обращение Конкурент * Подключение
Контакт * Контракт Валюта
Профиль сервера электронной почты Цель Счет
Интерес * Почтовый ящик Продукт для возможной сделки
Порядок Организация Продукт *
Издатель * Очередь Ресурс *
Литература Территория Пользователь*

Даже если сущность содержит поле изображения, для отображения изображения в приложении требуется выполнить дополнительное действие. В определении сущности поле Основное изображение имеет значение [Нет] или Изображение сущности. Выберите значение Изображение сущности для отображения изображения в приложении. Дополнительные сведения: Создание и изменение сущностей

После включения отображения изображения для сущности во всех записях без изображения будет отображаться изображение-заполнитель. Например, сущность "Интерес":

![Изображение заполнителя для формы сущности интереса в Dynamics 365 for Customer Engagement.](../customize/media/lead-entity-form.PNG "Изображение местозаполнителя для формы объекта "Интерес" в Dynamics 365 Customer Engagement (on-premises)")

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

При загрузке изображение преобразуется в формат JPG, и все загруженные изображения также будут использовать этот формат. При загрузке анимированного изображения в формате GIF сохраняется только первый кадр.

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

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

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

Интересуетесь свежими статьями по дизайну? Вступайте в группу на Facebook.

Текстовое поле

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


Понятное название поля

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


В поле поиска в Apple iOS есть и иконка лупы, и заметное название поля

Понятные названия полей придают пользователю уверенности: значит, он все правильно понимает и совершает правильные действия.

Короткое название поля

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


В предыдущей версии формы регистрации на Amazon было много лишних слов, а в результате страдала конверсия. Текущая версия гораздо лучше — названия стали короче.

Правильный размер поля

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


Когда поле в фокусе, это нужно подчеркнуть визуально: поле должно поменять цвет, или рамка должна подсветиться, или курсор должен моргнуть — что угодно.


Форма регистрации на Amazon дает пользователю четкие визуальные подсказки. Очевидно, что поле email сейчас в фокусе. Источник картинки: Amazon.

Подсказки для полей

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

К примеру, номер телефона можно ввести через “+”, или через код страны, или через местный код, или вообще без кодов. Чтобы решить эту проблему, можно добавить инструкцию, пример или подсказку — и пользователь сам поймет, в каком формате вводить номер. Есть несколько способов решить проблему формата телефонных номеров:

  • Авто-форматирование поля с номером. Это снимает любые вопросы и сомнения пользователя.


  • Заглушка с описанием или примером. У заглушки один недостаток — она исчезнет, как только пользователь начнет заполнять поле.



Полезная информация

Полезную информацию (или сопроводительный текст) нужно использовать только если это необходимо: например, объяснить, зачем запрашиваем данные кредитки, или как будет использована информация о дате рождения, или чтобы дать ссылку на “Условия предоставления услуги”. Сопроводительный текст — отличный способ развеять сомнения пользователя и предотвратить ошибки ввода. Только есть такое правило: объем текста не должен превышать 100 слов.


Краткие пояснения у полей “Телефон” и “Дата заезда/дата выезда” помогают пользователям двигаться вперед. Источник картинки: thinkwithgoogle

Только для мобильных: тип клавиатуры должен соответствовать формату поля

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


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

Цель: Чтобы всем пользователям (вне зависимости от их физических возможностей) было проще сканировать/заполнять поля.

Не пишите названия заглавными буквами

Никогда не используйте все заглавные — такое название будет очень сложно прочитать, и еще сложнее просканировать, потому что все буквы одной высоты.


ЗАГЛАВНЫЕ БУКВЫ сложнее читать, потому что у всех заглавных одинаковая прямоугольная форма, а для нашего восприятия это непривычно.


Размер шрифта

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


Цвет текста в названии

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

  • Для мелкого текста соотношение контрастов должно быть не менее 4,5:1 по отношению к фону.
  • Если текст крупный (жирный 14pt или обычный — от 18pt и выше) контраст с фоном должен быть не менее 3:1.


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

Сделайте удобные тап-зоны

В наше время можно сказать с уверенностью: кто-то из ваших пользователей открывает сайт/приложение на сенсорном устройстве. При проектировании мобильного интерфейса важно продумать удобные тап-зоны: они должны быть достаточно большими, чтобы нажать пальцем. Общепринятый размер тап-зоны — 45–57px, но если подгонять поля под этот размер, то на мобильных они будут казаться огромными. Поле размером 32px — 40px не выглядит слишком большим, и при этом достаточно удобно для нажатия пальцем.

Высота поля в Bootstrap 3 по умолчанию 34px — и это хороший базовый размер. Не стоит делать поля меньше.


Только для десктопов: задействуйте клавиатуру

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


Даже самое простое поле выбора даты должно отвечать требованиям руководства W3C. Источник изображения: Salesforce

Цель: Чтобы пользователь вводил как можно меньше данных.

Автозаполнение с умом

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

Еще пример: можно определить страну пользователя по IP-адресу. WhatsApp существенно облегчает ввод телефонного номера. Если вы заходите в приложение из США, код страны заполняется автоматически.


Автозаполнение и автопредложение

Автозаполнение предлагает варианты ввода в режиме реального времени — это помогает пользователям заполнять форму точнее и эффективнее. Это особенно актуально для малограмотных и иностранных пользователей.

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

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

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

Если вам понравилась статья и перевод, дайте нам знать — нажмите ♡

А если у вас есть на примете какая-нибудь классная статья по UX и не только — скиньте нам ссылку, и мы будем рады над ней поработать.

Нас можно найти в Facebook: Ольга Скулкина и Ринат Шайхутдинов.

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


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

Табличные базы данных

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

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

Поля и записи в базе данных

Столбцы таблицы называются полями и содержат конкретный атрибут сущности. Так, в таблице "Студенты" в качестве полей выступают:

  • фамилия, имя, отчество;
  • номер зачетки;
  • дата рождения;
  • номер телефона.

Строки называются записями и представляют отдельный реальный объект (конкретного студента).

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

С первого взгляда очевидно, что информация, хранящаяся в поле "Ф.И.О." существенно отличается от информации в поле "№ зачетки" или в поле "Дата рождения". Так как манипуляции с разными типами данных осуществляются по разным алгоритмам, целесообразно заранее определить, какого рода сведения будут храниться в конкретном поле таблицы.

Разные типы данных

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

Поля и их свойства

Поле записи является наименьшей именованной единицей информации в базе данных. Оно имеет два обязательных свойства:

  • уникальное в пределах таблицы имя, по которому к нему можно обращаться;
  • тип данных, хранящихся в нем.

Поле может быть отмечено как уникальное или ключевое.

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

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

Каждая таблица в базе должна иметь первичный ключ, уникальный для каждой записи и однозначно ее определяющий. Он может состоять из одного или нескольких полей. Разумнее всего выбирать в качестве первичного ключа поля, имеющие короткие значения. Например, в таблице "Студенты" в качестве первичного ключа может выступать поле "№ зачетки".

Свойства целостности

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

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

Обеспечение целостности данных контролируется несколькими свойствами:

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

Ограничения целостности данных

Основные типы и форматы полей, поддерживаемые большинством СУБД:

  • числовые - целые и вещественные;
  • строковые;
  • бинарные;
  • логические;
  • дата и время;
  • перечисления и множества.

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

Строки

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

Строки могут быть фиксированной или переменной длины. Во втором случае обычно устанавливается максимально возможный размер. Наиболее распространенное ограничение по длине для строк в БД - 255 символов.

Названия строковых типов полей в разных СУБД могут отличаться. Наиболее популярные:

  • CHAR - фиксированная длина до 255 символов. Если размер строки меньше установленного, она будет дополнена пробелами.
  • VARCHAR, TINYTEXT - переменная длина до 255 символов, для хранения размера тратится дополнительный байт.
  • TEXT, MEMO - переменная длина до 65.535 символов.
  • MEDIUMTEXT - максимум 16.777.215 знаков.
  • LONGTEXT - максимально 4.294.967.295 символов в строке.

Типы CHAR и VARCHAR

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

Очень большие фрагменты текста могут также храниться в полях типа BLOB, которые рассмотрены ниже.

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

Числа

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

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

Для целых чисел:

  • TINYINT, байт - диапазон значений 0 - 255 (или -127 - 128);
  • SMALLINT - от 0 до 65.535 (от -32.768 до 32.767);
  • MEDIUMINT - от 0 до 16.777.215 (от -8.388.608 до 8.388.607);
  • INT - от 0 до 4294967295 (от -2.147.483.648 до 2.147.483.647);
  • BIGINT - от 0 до 18.446.744.073.709.551.615 (от -9.223.372.036.854.775.808 до 9.223.372.036.854.775.807).

Для вещественных чисел:

  • FLOAT - число знаков в дробной части мантиссы не больше 24.
  • DOUBLE, REAL - число с двойной точностью, после точки может быть до 53 знаков.

Существует еще один специфический тип поля БД - DECIMAL (NUMERIC). Это такое же число, как DOUBLE, записанное, однако, в виде строки.

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

Возможные ограничения целостности данных:

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

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

Счетчик

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

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

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

Дата и время

Очень удобны для работы поля с типом данных "Дата" и "Время". Они позволяют сохранять данные в различных форматах:

Основным ограничением целостности является способ форматирования данных.

Тип поля DATATIME

Логические значения

Самый простой тип информации - логический, или булев. Он допускает всего два взаимоисключающих значения: TRUE (истина, 1) и FALSE (ложь, 0).

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

Бинарные данные

Базы данных предусматривают возможность хранения больших объемов информации. Аудио- и видеофайлы, изображения, фрагменты скомпилированного кода хранятся в BLOB-виде (Binary Large Object, двоичный большой объект).

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

  • BINARY - двоичная строка фиксированной длины;
  • TINYBLOB;
  • BLOB;
  • MEDIUMBLOB;
  • LONGBLOB;
  • OLE-объект (Object Linking and Embedding, технология связывания и вставки объектов) - в Microsoft Access;

Массив двоичных данных не имеет пользовательских ограничений целостности. Работу с BLOB-объектами разные базы реализуют по-разному.

Реляционные базы данных

Перечисления

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

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

Ограничение целостности в этом случае очевидно - все возможные значения поля базы заранее определены и не могут принимать других значений.

Множества

Очень похоже работает тип данных SET. Он также принимает список допустимых строковых значений, но позволяет выбрать сразу несколько из них. Так работает элемент чекбокс. Максимальное количество элементов в наборе - 64.

Типы полей в базах данных

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

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

Читайте также: