СОЗДАНИЕ ТАБЛИЦ
Эта глава вводит нас в
область SQL называемую - DDL(Язык Определения Данных), где создаются объекты данных SQL. Эта
глава также покажет
другой вид объекта данных SQL - Индекс. Индексы используются чтобы делать поиск более
эффективным и, иногда,
заставлять значения отличаться друга от друга. Они обычно работают незаметно для Вас, но если
вы попробуете поместить
значения в таблицу и они будут отклонены, из-за их неуникальности, это будет означать что
другая строка имеет то же самое
значение для этого поля, и что это поле имеет уникальный индекс или ограничение которое предписывает ему
уникальность.
======== КОМАНДА СОЗДАНИЯ ТАБЛИЦЫ ========
Таблицы создаются командой CREATE TABLE. Эта команда создает пустую таблицу - таблицу без
строк. Значения
вводятся с помощью DML команды INSERT . Команда CREATE TABLE в основном определяет имя таблицы,
в
виде описания набора имен столбцов указанных в определенном порядке. Она также определяет
типы данных и размеры
столбцов. Каждая таблица должна иметь по крайней мере один столбец. Синтаксис команды CREATE
TABLE: CREATE
TABLE ( [()], [()] ... ); Типы данных значительно меняются от программы к программе. Для
совместимости со стандартом, они должны все, по крайней мере, поддерживать стандарт типа ANSI.
Так как пробелы используются для разделения частей команды SQL, они не могут быть частью
имени
таблицы ( или любого другого объекта, такого как индекс ). Подчеркивание ( _ ) - обычно
используется для разделения
слов в именах таблиц. Значение аргумента размера зависит от типа данных. Если вы его не
указываете, ваша система сама
будет назначать значение автоматически. Для числовых значений, это - лучший выход, потому что
в этом случае, все ваши
поля такого типа получат один и тот же размер что освобождает вас от проблем их общей
совместимости.
Кроме того, использование аргумента размера с некоторыми числовым наборами, не совсем простой
вопрос. Если вам
нужно хранить большие числа, вам несомненно понадобятся гарантии, что поля достаточно велики
чтобы вместить их.
Один тип данных для которого вы, в основном, должны назначать размер - CHAR. Аргумент
размера - это целое число
которое определяет максимальное число символов которое может вместить поле. Фактически, число
символов поля может
быть от нуля ( если поле - NULL ) до этого числа. По умолчанию, аргумент размера = 1, что
означает что поле может содержать только одну букву. Это конечно не совсем то что вы хотите.
Таблицы принадлежат пользователю который их создал, и
имена всех таблиц принадлежащих данному пользователю должны отличаться друга от друга, как и
имена всех столбцов
внутри данной таблицы. Отдельные таблицы могут использовать одинаковые имена столбцов, даже
если они принадлежат одному и тому же пользователю. Примером этому - столбец city в таблице
Заказчиков и в таблице Продавцов.
Пользователи не являющиеся владельцами таблиц могут ссылаться к этим таблицам с помощью имени
владельца этих
таблиц сопровождаемого точкой; например, таблица Employees созданая Smith будет называться
Smith.Employees когда она
упоминается каким-то другим пользователем ( мы понимаем что Smith - это Идентификатор
Разрешения (ID). (ID)
сообщаемый пользователем ( ваш разрешенный ID - это ваше имя в SQL. Этот вывод обсуждался
). Эта команда будет создавать таблицу Продавцов:
CREATE TABLE Saleepeople ( snum integer, sname char
(10), city char (10), comm declmal ); Порядок столбцов в таблице определяется порядком в
котором они указаны. Имя столбца
не должно разделяться при переносе строки ( что сделано для удобочитаемости ), но отделяется
запятыми.