Системы обработки информации - язык баз данных SQL

       

Раздел AS оператора CREATE TABLE


Использование раздела LIKE в операторе CREATE TABLE полезно, если в определение новой таблицы требуется включить полную копию структуры одной или нескольких существующих таблиц. Однако в некоторых случаях оказывается полезным скопировать только часть структуры существующих таблиц, а в общем случае – создать таблицу по образу некоторого выражения запросов.

Для этих целей предназначена расширенная форма оператора CREATE TABLE, включающая раздел AS. В этом случае используется следующая синтаксическая форма оператора CREATE TABLE:

CREATE TABLE table_name [ column_name_commalist ]
AS subquery { WITH NO DATA | WITH DATA }

При выполнении подобного оператора создается таблица со структурой (именами столбцов, их типами данных и т.д.) выражения запросов. Допускаются также возможности переименования столбцов и занесения в создаваемую таблицу строк, генерируемых при выполнении выражения запроса.

Выполнение оператора CREATE TABLE с разделом AS не приводит к порождению зависимости новой таблицы от определяющего ее выражения запросов. После начального заполнения новой таблицы обновления таблиц, над которыми задано выражение запросов, не будут автоматически отражаться в состоянии новой таблицы.



Содержание раздела