VR
Virtual Reality On-line   Журнал
Новости   |     Журнал    |    Хаkер    |     Магазин   |   Проекты
[   Вход    ]
[Kарта сайтa]

[ Download  ]
[  Конкурс  ]
[ Анекдоты  ]
[  Ссылки   ]
[  Реклама  ]
[ Почтальон ]
[ О проекте ]






TopList
Язык запросов SQL
Создание, изменение и удаление таблиц
:

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

Для создания таблицы используется команда CREATE TABLE, которая создаёт пустую таблицу. После этой команды нужно определить столбцы, их типы и размер.

 CREATE TABLE 
  ( <Имя столбца > <Тип> [(<Размер>)],
    <Имя столбца > <Тип> [(<Размер>)] ... );

Обрати внимание, что <Размер> я показал в квадратных скобках, потому что не все типы данных требуют указания размера поля.

Давай посмотрим, какие бывают типы данных:

  • CHAR или CHARACTER - Cтроковое поле. В качестве размера используется длина строки.
  • DEC или DECIMAL - Десятичное число, т.е. число с дробной частью. Размер состоит из двух частей - точность и масштаб. Эти параметры нужно указывать через запятую. Точность показывает сколько значащих цифр имеет число. Масштаб показывает количество знаков после запятой. Если масштаб равен нулю, то число становится эквивалентом целого.
  • NUMERIC - Такое же как DECIMAL. Разница только в том, что максимальное десятичное не может превышать аргумента точности.
  • FLOAT - Опять число с плавоющей точной, только в этом случае размер указывается одним числом, которое указывает на минимальную точность.
  • REAL - то же, что и FLOAT, только размер не указывается, а берётся из системы поумолчанию.
  • DOUBLE - то же, что и REAL, только размер побольше (чаще всего в два раза).
  • INT или INTEGER - целое число. Размер указывать не надо, он подставляется автоматически.
  • SMALLINT - то же, что и INTEGER, только его размер меньше. В большинстве случаев, если точность INTEGER равна 2 байтам, то точность SMALLINT равна 1 байту.

Сразу врываемся в реальный пример:

 CREATE TABLE NovayaTablica
  (id    integer,
   name  char (10),
   city  char (10),
   Metr  declmal);

Этот запрос создаёт таблицу с именем NovayaTablica и четырмя полями.

Теперь я хочу открыть один маленький секрет. Когда ты работаешь с такими базами, как Access, то ты можешь использовать в качестве имён таблиц или полей русские слова. А самое главное, что эти слова мугут включать пробелы, например, ты можешь назвать таблицу как "Новая таблицы". Как же тогда обратится из запроса к такой таблице? Все названия включающие в себя пробелы должны заключатся в квадратные скобки.

 CREATE TABLE [Новая таблица]
  (Идентификатор    integer,
   Имя  char (10),
   [Место расположения]  char (10),
   Метраж  declmal);

Обрати внимание, что все составные имена заключены в квадратные скобки. При работе с запросом, ты так же должен использовать такие скобки:

Select *
From [Новая таблица]
WHERE
  Идентификатор=10 and
  [Место расположения] LIKE 'Москва';

Всё прекрасно, но не все базы данных позволяют использовать русские и составные имена.

Теперь поговорим о создании индексов. В общем виде это выглядит так:

CREATE INDEX <Имя индекса> ON <Имя таблицы>
            (<Имя поля> [,<Имя поля>]...);

А вот и реальный пример:

 CREATE INDEX NewIndex ON NewTable (name);

Здесь создаётся новый индекс с именем NewIndex в таблице NewTable для name. Если ты захочешь создать уникальный индекс, то ты должен написать так:

 CREATE UNIQUE INDEX NewIndex ON NewTable (name);

При создании простых индексов ты можешь указать в скобках несколько полей, например:

 CREATE INDEX NewIndex ON NewTable (name, city);

Это создаст составной индекс и проиндексирует таблицу сразу по двум полям name и city. ПОМНИ: При создании уникальных индексов такого делать нельзя. Поле должно быть одно.

Теперь поговорим о добавлении новых столбцов. Для этого существует команда ALTER TABLE. Вот так она выглядит в общем виде:

 ALTER TABLE <Имя таблицы> ADD <Имя поля> <Тип> <Размер>;

Например:

 ALTER TABLE Справочник ADD [Новое поле] INTEGER

Итак, мы так долго старались, а теперь одним махом уничтожим всё, что тут натворили. Для удаления полей используй:

ALTER TABLE [Имя таблицы] DROP [Имя поля]

А для удаления таблиц используется команда DROP TABLE:

DROP TABLE < Имя таблицы >;

Вот и всё, что я хотел тебе сегодня расказать. Удачи!!!


Design by FMk group ©
Copyright©: Horrific aka Флёнов Михаил ©