Страница 1 из 1

Переименование/реструктуризация таблиц

Добавлено: 17 сен 2007, 13:06
Кузнецов Максим
Мне необходимо выполнить переименование и реструктуризацию таблицы. Подскажите, есть ли в IB/FB возможность более оптимального решения этих задач, кроме очевидных, т.е.

- для переименования: создать временную таблицу, скопировать все записи в нее, удалить старую таблицу и создать ее с новым именем, и скопировать записи обратно

- для реструктуризации: создать временную таблицу, скопировать все записи в нее, удалить старую таблицу и создать ее с новой структурой, и скопировать записи обратно, выполнив соответствующие преобразования ?

Re: Переименование/реструктуризация таблиц

Добавлено: 17 сен 2007, 14:36
WildSery
Кузнецов Максим писал(а):- для переименования: создать временную таблицу, скопировать все записи в нее, удалить старую таблицу и создать ее с новым именем, и скопировать записи обратно
Может, создать сразу с нужным именем и скопировать в неё записи?

Добавлено: 17 сен 2007, 19:17
Кузнецов Максим
WildSery, спасибо за ответ,
я хотел бы уточнить первоначальный вопрос. Мне нужно реструктуризовать таблицу, но не хотелось бы гонять данные два раза: туда и обратно. Поэтому я хотел узнать - нет ли в FB возможности просто переименовать таблицу (может через системные таблицы RDB$..), чтобы можно было после этого воссоздать эту таблицу с новой структурой и скопировать данные только один раз?

Добавлено: 17 сен 2007, 19:35
Merlin
Реструктуризация настолько мощная, что Alter Table не канает?

Добавлено: 17 сен 2007, 20:07
Кузнецов Максим
Merlin, спасибо за ответ, я все понял.

Добавлено: 18 сен 2007, 10:31
WildSery
Кузнецов Максим писал(а):просто переименовать таблицу (может через системные таблицы RDB$..)
Такой возможности нет, и в RDB$ лезть по-любому не стоит, сломать можно совсем.