русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

СУБПОДРАЗДЕЛЕНИЯ SQL


Дата добавления: 2015-07-09; просмотров: 538; Нарушение авторских прав


 

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

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

 

DDL( Язык Определения Данных ) - так называемый Язык Описания Схемы в ANSI, состоит из команд которые создают объекты ( таблицы, индексы, просмотры, и так далее ) в базе данных.

DML (Язык Манипулирования Данными) - это набор команд которые определяют какие значения представлены в таблицах в любой момент времени.

 

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

 

Они являются составными частями DDL в ANSI. Не забывайте эти имена. Это не раз­личные языки, а разделы команд SQL сгруппированных по их функциям.

 

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

 

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

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

 

В SQL, это делается с помощью назначения каждому полю - типа данных который указывает на тип значения которое это поле может содержать. Все значения в дан­ном поле должны иметь одинаковый тип. В таблице Заказчиков, например, cname и city - содержат строки текста для оценки, snum, и cnum - это уже номера. По этой причине, вы не можете ввести значение Highest(Наивысший) или значение None(Никакой) в поле rating, которое имеет числовой тип данных. Это ограничение удачно, так как оно налагает некоторую структурность на ваши данные. Вы часто будете сравнивать некоторые или все значения в данном поле, поэтому вы можете выполнять действие только на определенных строках а не на всех. Вы не могли бы сделать этого если бы значения полей имели смешанный тип данных.



 

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

Такие как, DATA(ДАТА) и TIME(ВРЕМЯ) - фактически почти стандартные типы( хотя точный формат их меняется ). Некоторые пакеты также поддерживают такие типы, какнапример MONEY(ДЕНЬГИ) и BINARY(ДВОИЧНЫЕ). (MONEY - это специальная система ис­числения используемая компьютерами.

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

 

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

 

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

 

Два типа чисел ANSI , INTEGER(ЦЕЛОЕ ЧИСЛО) и DECIMAL(ДЕСЯТИЧНОЕ ЧИСЛО) ( кото­рые можно сокращать как INTиDEC,

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

Естественно, что тип ЦЕЛОЕ можно представить как ДЕСЯТИЧНОЕ ЧИСЛО которое не со­держит никаких цифр справа от десятичной точки.

 

Тип для текста - CHAR( или СИМВОЛ ), который относится к строке текста. Поле типа CHAR имеет определенную длину, которая определяется максимальным числом символов которые могут быть введены в это поле. Больше всего реализаций также имеют нестандартный тип называемый VARCHAR(ПЕРЕМЕННОЕ ЧИСЛО СИМВОЛОВ), который является текстовой строкой которая

может иметь любую длину до определенного реализацией максимума (обычно 254 сим­вола ). CHARACTER и VARCHAR значения включаются в одиночные кавычки как "текст". Различие между CHAR и VARCHAR в том, что CHAR должен резервировать дос­таточное количество памяти для максимальной длины строки, а VARCHAR распределяет память так как это необходимо.

 

Символьные типы состоят из всех печатных символов, включая числа. Однако, но­мер 1 не то же что символ "1". Символ "1" - только другой печатный фрагмент тек­ста, не определяемый системой как наличие числового значения 1. Например 1 + 1 = 2, но "1" + "1" не равняется "2". Символьные значения сохраняются в компьютере как двоичные значения, но показываются пользователю как печатный текст. Преобра­зование следует за форматом определяемым системой которую вы используете. Этот формат преобразования будет одним из двух стандартных типов (возможно с расшире­ниями) используемых в компьютерных системах:

в ASCII коде ( используемом во всех персональных и малых компьютерах ) и EBCDIC коде (Расширенном Двоично-Десятичном Коде Обмена Информации) (используемом в больших компьютерах). Определенные операции, такие как упорядочивание в алфавит­ном порядке значений поля, будет изменяться вместе с форматом. Применение этих двух форматов будет обсуждаться в Главе 4.

 

Мы должны следить за рынком, а не ANSI, в использовании типа называемого DATE(ДАТОЙ). ( В системе, которая не распознает тип ДАТА, вы конечно можете объявить дату как символьное или числовое поле, но это сделает большинство операций более трудоемкими. ) Вы должны смотреть свою документацию по пакету программ ко­торые вы будете использовать, чтобы выяснить точно, какие типы данных она под­держивает.

 



<== предыдущая лекция | следующая лекция ==>
 | 


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.583 сек.