Читать «SQL за 24 часа» онлайн - страница 15

Unknown

Рассмотрим следующий пример.

WHERE NAME = 'SMITH'

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

Пользовательские типы данных

Пользовательский тип данных - это тип данных, определяемый пользователем. Пользовательские типы данных дают возможность строить свои типы данных на основе уже имеющихся. Для создания такого типа данных используется оператор CREATE TYPE. Например,

CREATE TYPE PERSON AS OBJECT

(NAME VARCHAR2(30),

SSN VARCHAR2(9));

Ссылаться на определенный таким образом пользовательский тип данных можно так:

CREATE TABLE EMP_PAY (EMPLOYEE PERSON, SALARY NUMBER(10,2), HIRE_DATE DATE);

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

ALTER DOMAIN MONEY_D

ADD CONSTRAINT MONEY__CON1

CHECK (VALUE > 5};

Сослаться на домен можно так:

CREATE TABLE EMP__PAY

(EMP_ID NUMBER(9),

EMP_NAME VARCHAR2(30),

PAY_RATE MONEY_D);

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

Резюме

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

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

Вопросы и ответы

Почему можно вводить числа (например, идентификационный код) в поля, определенные как строки символов?

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