Галерея
7757 8119 8300 8698 8817 9504 9722 9937
Интересные записи
Топовые новости
Новое

Создание новой таблицы как копии уже существующей

Создание новой таблицы как копии уже существующейИногда возникает потребность в клонировании уже существующей таблицы (как с данными, так и без них). В трех ведущих СУБД синтаксис этой операции несколько отличается. Создание новой таблицы как точной копии уже существующей или как комбинации столбцов разных таблиц — еще одна новая функция, введенная в стандарте SQL:2003, хотя уже долгое время применялась в СУБД разных производителей. В дополнение к расширению функциональности инструкции CREATE TABLE LIKE, позволяющей копировать умолчания столбцов и столбцы идентичности из таблицы-источника, в SQL:2003 была введена инструкция CREATE TABLE AS, позволяющая переименовывать исходные столбцы. Приведем пример. В приведенном выше примере создается пустая таблица CUSTOMER_PHONE с двумя столбцами CUST_NAME_S и PHONE_PHONENUM_S, имеющими те же типы данных, что и соответствующие столбцы исходных таблиц. Того же результата можно достичь с помощью следующего синтаксиса. Преимуществом синтаксиса CREATE TABLE…LIKE является то, В Microsoft SQL Server можно создать копию таблицы PAYMENT_TERMS с помощью следующего синтаксиса. С помощью приведенного синтаксиса создается локальная временная таблица. Если опустить символ решетки, таблица payment_terms2 будет создана как постоянная. Для создания пустой таблицы в Microsoft SQL Server можно использовать тот же прием, что и в Oracle, — вставку в предложение where заведомо ложного условия. Некоторые реляционные таблицы могут быть довольно большими, а запросы к ним — обрабатываться длительное время. Даже если созданы все необходимые индексы, а база данных хорошо спроектирована, некоторым запросам все равно придется выполнять полное сканирование таблицы, при котором каждая запись проверяется на наличие заданного значения. Особенно это касается случаев, когда извлекаемые записи консолидируются с помощью предложения group by, в котором используются итоговые функции.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *