Скачиваний:
25
Добавлен:
01.04.2014
Размер:
761.34 Кб
Скачать

Субподразделения sql

И в интерактивной и во вложенной формах SQL, имеются многочисленные

части, или субподразделения. Так как вы вероятно сталкнетесь с этой

терминологией при чтении SQL, мы дадим некоторые пояснения.

К сожалению, эти термины не используются повсеместно во всех

реализациях. Они подчеркиваются ANSI и полезны на концептуальном

уровне, но большинство SQL программ практически не обрабатывают их

отдельно, так что они по существу становятся функциональными

категориями команд SQL.

DDL ( Язык Определения Данных ) - так называемый Язык Описания Схемы

в ANSI, состоит из команд которые создают объекты ( таблицы, индексы,

просмотры, и так далее ) в базе данных.

DML (Язык Манипулирования Данными) - это набор команд которые

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

DCD (Язык Управления Данными) состоит из средств которые определяют,

разрешить ли пользователю выполнять определенные действия или нет.

Они являются составными частями DDL в ANSI. Не забывайте эти имена.

Это не различные языки, а разделы команд SQL сгруппированных по их

функциям.

SQL: КРАТКИЙ ОБЗОР 15

______________________________________________________________________

======== РАЗЛИЧНЫЕ ТИПЫ ДАННЫХ ========

Не все типы значений которые могут занимать поля таблицы - логически

одинаковые. Наиболее очевидное различие - между числами и текстом.

Вы не можете помещать числа в алфавитном порядке или вычитать одно

имя из другого. Так как системы с реляционной базой данных базируются

на связях между фрагментами информации, различные типы данных должны

понятно отличаться друга от друга, так чтобы соответствующие процессы и

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

В SQL, это делается с помощью назначения каждому полю - типа данных

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

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

Заказчиков, например, cname и city - содержат строки текста для оценки,

snum, и cnum - это уже номера. По этой причине, вы не можете ввести

значение Highest(Наивысший) или значение None(Никакой) в поле rating,

которое имеет числовой тип данных. Это ограничение удачно, так как оно

налагает некоторую структурность на ваши данные. Вы часто будете сравни-

вать некоторые или все значения в данном поле, поэтому вы можете выпол-

нять действие только на определенных строках а не на всех. Вы не могли

бы сделать этого если бы значения полей имели смешанный тип данных.

К сожалению, определение этих типов данных является основной областью

в которой большинство коммерческих программ баз данных и официальный

стандарт SQL, не всегда совпадают. ANSI SQL стандарт распознает только

текст и тип номера, в то время как большинство коммерческих программ

используют другие специальные типы.

Такие как, DATA(ДАТА) и TIME(ВРЕМЯ) - фактически почти стандар-

тные типы( хотя точный формат их меняется ). Некоторые пакеты также под-

держивают такие типы, как например MONEY(ДЕНЬГИ) и BINARY

(ДВОИЧНЫЕ). (MONEY - это специальная система исчисления используе-

мая компьютерами.

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

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

и понимать.)

ANSI определяет несколько различных типов значений чисел, различия

между которыми - довольно тонки и иногда их путают. Разрешенные ANSI

типы данных перечислены в Приложении B.

Сложность числовых типов ANSI можно, по крайней мере частично,объяснить

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

Соседние файлы в папке ПОНИМАНИЕ SQL