Мартин грубер понимание sql перевод Лебедева В. Н. Под редакцией Булычева В. Н. Москва, 1993 martin gruber


Download 1.45 Mb.
bet82/172
Sana26.01.2023
Hajmi1.45 Mb.
#1128343
1   ...   78   79   80   81   82   83   84   85   ...   172
Bog'liq
Грубер. Понимание SQL

17
СОЗДАНИЕ ТАБЛИЦ
ВПЛОТЬ ДО ЭТОГО МЕСТА, МЫ ЗАПРАШИВАЛИ ТАБЛИЦЫ данных и выполняли команды по извлечению этих данных, считая, что эти таблицы уже были созданы кем-то до нас. Это действительно наиболее реальная ситуация, когда небольшое количество людей создают таблицы, которые затем используются другими людьми. Наша цель состоит в том, чтобы охватив информацию сначала более широко, перейти затем к более узким вопросам.
В этой главе, мы будем обсуждать создание, изменение и удаление таблиц. Все это относится к самим таблицам, а не к данным, которые в них содержатся. Будете или не будете Вы выполнять эти операции самостоятельно, но их концептуальное понимание увеличит ваше понимание языка SQL и природу таблиц, которые вы используете. Эта глава вводит нас в область SQL называемую — DDL (Язык Определения Данных), где создаются объекты данных SQL.
Эта глава также покажет другой вид объекта данных SQL — Индекс. Индексы используются, чтобы делать поиск более эффективным и, иногда, заставлять значения отличаться друга от друга.
Они обычно работают незаметно для Вас, но если вы попробуете поместить значения в таблицу и они будут отклонены из-за их неуникальности, это будет означать что другая строка имеет то же самое значение для этого поля, и что это поле имеет уникальный индекс или ограничение, которое предписывает ему уникальность.
Обсуждение вышеупомянутого, продолжится в Главе 18.
КОМАНДА СОЗДАНИЯ ТАБЛИЦЫ
Таблицы создаются командой CREATE TABLE. Эта команда создает пустую таблицу — таблицу без строк. Значения вводятся с помощью DML команды INSERT (См. Главу 15). Команда CREATE TABLE в основном определяет имя таблицы, в виде описания набора имен столбцов указанных в определенном порядке. Она также определяет типы данных и размеры столбцов. Каждая таблица должна иметь по крайней мере один столбец.
Синтаксис команды CREATE TABLE:
CREATE TABLE
( [()],
[()] ... );

Как сказано в Главе 2, типы данных значительно меняются от программы к программе. Для совместимости со стандартом, они должны все, по крайней мере, поддерживать стандарт типа ANSI. Он описан в Приложении B.
Так как пробелы используются для разделения частей команды SQL, они не могут быть частью имени таблицы (или любого другого объекта, такого как индекс). Подчеркивание (_) обычно используется для разделения слов в именах таблиц.
Значение аргумента размера зависит от типа данных. Если вы его не указываете, ваша система сама будет назначать значение автоматически. Для числовых значений, это — лучший выход, потому что в этом случае, все ваши поля такого типа получат один и тот же размер, что освобождает вас от проблем их общей совместимости (см. Главу 14).
Кроме того, использование аргумента размера с некоторыми числовым наборами, не совсем простой вопрос. Если вам нужно хранить большие числа, вам несомненно понадобятся гарантии, что поля достаточно велики чтобы вместить их.
Один тип данных для которого вы, в основном, должны назначать размер — CHAR. Аргумент размера — это целое число которое определяет максимальное число символов которое может вместить поле. Фактически, число символов поля может быть от нуля (если поле — NULL) до этого числа. По умолчанию, аргумент размера = 1, что означает, что поле может содержать только одну букву. Это конечно не совсем то, что вы хотите.
Таблицы принадлежат пользователю, который их создал, и имена всех таблиц, принадлежащих данному пользователю должны отличаться друга от друга, как и имена всех столбцов внутри данной таблицы. Отдельные таблицы могут использовать одинаковые имена столбцов, даже если они принадлежат одному и тому же пользователю. Примером этому — столбец city в таблице Заказчиков и в таблице Продавцов. Пользователи не являющиеся владельцами таблиц могут ссылаться к этим таблицам с помощью имени владельца этих таблиц, сопровождаемого точкой; например, таблица Employees созданая Smith будет называться Smith.Employees когда она упоминается каким-то другим пользователем. Мы понимаем что Smith — это Идентификатор Разрешения (ID), сообщаемый пользователем (ваш разрешенный ID — это ваше имя в SQL). Этот вывод обсуждался в Главе 2, и будет продолжен в Главе 22.
Эта команда будет создавать таблицу Продавцов:

Download 1.45 Mb.

Do'stlaringiz bilan baham:
1   ...   78   79   80   81   82   83   84   85   ...   172




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling