Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Моделирование баз данных.doc
Скачиваний:
4
Добавлен:
01.05.2025
Размер:
1.82 Mб
Скачать

4.1.7 Логические операторы

Операторы этой группы применимы только к целочисленным типам данных: int, smallint, tinyint, bit и трактуют целые значения как последовательность двоичных значений 0 и 1.

Таблица 4.3 - Логические операторы

Оператор

Запись оператора в командах SQL

Описание

&

AND

Конъюнкция (логическое И)

|

OR

Дизъюнкция (логическое ИЛИ)

~

NOT

Логическое отрицание

^

Исключающее ИЛИ

Рассмотрим фрагмент программы.

--Объявление трех локальных переменных типа Integer.

declare @i integer, @j integer, @k integer

--Задание значений переменным.

select @i=2

select @j=4

--Вычисление дизъюнкции переменных @i и @j.

select @k=@i | @j

--Вывод результата на экран в виде строки символов.

print str(@k)

--Результат равен 6.

Если логическая операция ИЛИ используется в команде SELECT SQL, то использовать нужно слово OR. Например, из таблицы Table1 необходимо выбрать строки, в которых значение поля Cod равно 12 или 33. В этом случае команда SELECT должна быть записана следующим образом:

SELECT * FROM Table1 WHERE Cod = 12 OR Cod = 33

      1. Типы данных

Тип данных – это характеристика, которая задается для столбца таблицы или переменной. При этом определяется тип хранящейся в них информации.

Таблица 4.4 - Системные типы данных

Тип

Длина, байт

Занимаемый объем

Описание

Bynary

n

До 8 Кб

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

VarBinary

n

До 8 Кб

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

Tinyint

-

1 байт

Целое число от 0 до 255

Char

n

1 байт на символ

Строка символов размером до 8 К. Если фактическая длина строки меньше n, то она дополняется справа пробелами.

Varchar

n

1 байт на символ

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

Money

-

8 байт

Денежное выражение для числовой величины. Выводит число с четырьмя десятичными разрядами и установленным обозначением денежной единицы.

Smallmoney

-

4 байта

Позволяет сохранять денежные значения в более узком, по сравнению с типом Money, диапазоне от -214,748.3648 до +214,748.3647.

Datetime

-

8 байт

Дата и время. Позволяет хранить дату и время начиная с 01.01.1753 нашей эры и заканчивая 31.12.9999 нашей эры с точностью 3.33 мс.

SmallDatetime

-

4 байта

Дата и время. Позволяет хранить дату и время начиная с 01.01.1900 нашей эры и заканчивая 06.06.2079 нашей эры с точностью 1 минута.

Bit

-

1 байт

Используется для хранения двоичного числа, принимающего значение 0 или 1. в одном байте можно хранить до 8 столбцов данного типа. Не допускается использования значения NULL.

Float

n

От 1 до 20 байтов

Числовой тип данных, который может содержать целые и дробные части. Допустимый интервал – от -1.79Е+308 до +1.79+308.

Int (Integer)

-

4 байта

Целое число от -2,147,483,648 до 2,147,483,647

Smallint

-

2 байта

Целое число от -32,768 до 32,767

Image

-

16 байт

Поле для ссылки на объект OLE

Text

-

16 байт

Поле примечаний для ссылки на блок данных. В полях типа Text хранится текстовая информация, размер которой кратен 8 Кб. Максимальный размер хранимой строки 2,147,483,647 символов.

Decimal

(p,s)

От 2 до 17 байтов

В отличие от FLOAT и REAL эти типы позволяют сохранять десятичные числа точно, без искажений. Диапазон значений - от (-10Е+38) до (+10Е+38).

Numeric

(p,s)

Real

-

4 байта

Тип данных с плавающей точкой. Положительные или отрицательные числа можно сохранять с точностью до 7 цифр. Данные типа Real принадлежат интервалу от

-3.4Е+38 до +3.4Е+38.

nChar

2 байта на символ

Новые типы данных, введенные в SQL Server 7.0, которые используются для хранения строк в специальной кодировке Unicode.

nVarchar

nText

Timestamp

-

8 байт

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