Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
69
Добавлен:
23.11.2017
Размер:
3.23 Mб
Скачать

Типы данных

В стандарте ANSI/ISO (SQL1) определены типы данных, которые можно использовать для представления информации в реляционной БД. Эти типы образуют лишь минимальный набор и поддерживаются во всех коммерческих СУБД:

  1. строки символов постоянной длины;

  2. целые числа;

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

  4. числа с плавающей запятой.

В стандарт SQL2 вошли ещё несколько типов данных:

  1. строки символов переменной длины;

  2. дата и время;

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

  4. строки национальных символов.

В большинстве коммерческих СУБД помимо типов данных, определённых в стандартах, имеется множество дополнительных типов данных.

Константы

В стандарте ANSI /ISO (SQL1) определён формат числовых и строковых констант, или литералов, которые представляют конкретные значения данных.

Целые и десятичные константы, называемые точными числовыми литералами, в операторах SQL представляются в виде обычных десятичных чисел со знаком или без знака:

21 –375 2000 0.0 –4.579 Константы с плавающей запятой, называемые приблизительными числовыми литералами, задаются с помощью символа Е, означающего умножение на 10 в степени:

1.5Е3  1,5*103 –314Е – 2  –3,14 Строковые константы заключаются в апострофы (одинарные кавычки):

‘ИВАНОВ’ ‘Зеленоград, 801-101’ Сам апостроф в составе строковой константы представляется двумя подряд идущими апострофами:

‘ОБ’’ЕКТ’  ОБ’ЕКТ

Календарные даты и время представляются в виде строковых констант. Форматы этих констант в различных СУБД отличаются друг от друга. Кроме того, способы записи времени и даты зависят от страны. В системе Delphi утилита конфигурации BDE позволяет задать необходимый формат этих констант:

‘5/22/1999’ ’10:35:15’

В стандарте SQL1 имеется также константа USER, обозначающая имя пользователя, под которым он подключился к БД.

Выражения

В соответствии со стандартом ANSI/ISO (SQL1) в выражениях можно использовать 4 арифметических операции: сложение (X+Y), вычитание (X-Y), умножение (X*Y) и деление (X/Y).Для формирования сложных выражений можно использовать круглые скобки.

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

Встроенные функции

Встроенные функции не были определены в стандарте SQL1, хотя в большинстве СУБД такие функции реализованы, и наиболее полезные функции вошли в стандарт SQL2. Например, локальный SQL в системе Delphi допускает использование следующих встроенных функций:

CAST (<val> AS <datatype>) – преобразование в другой тип данных

UPPER (<val>) – преобразует буквенные символы строки в прописные

Отсутствующие, неподходящие или неизвестные данные

Поскольку БД является моделью реального мира, то отдельные элементы данных в ней в какой-то конкретный момент времени будут либо отсутствовать, либо не подходить для характеристики объекта, либо иметь неизвестное значение. Такое значение в SQL обозначается величиной NULL. Например, в столбце SUMD таблицы PERSON содержатся величины общих доходов для каждого жителя. Для нового жителя, который только что зарегистрирован, общий доход неизвестен, поэтому для него в качестве значения в столбце SUMD - NULL.

Соседние файлы в папке БД лабы