|
|
|
Как создать копию таблицы в одной и той же схеме
|
|||
|---|---|---|---|
|
#18+
Привет всем. Подскажите как создать копию таблицы, назначив копии известное имя. Можно и временную таблицу. Главное, чтобы структура совпадала. Заранее спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2006, 19:51 |
|
||
|
Как создать копию таблицы в одной и той же схеме
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2006, 20:35 |
|
||
|
Как создать копию таблицы в одной и той же схеме
|
|||
|---|---|---|---|
|
#18+
vasilis http://www.sql.ru/forum/actualthread.aspx?tid=266473 Много разговоров, а реального предложения нет. Может эту задачу можно решить по другому? Есть приложение, которое работате с базой через JDBC. Необходимо: 1. Вставить в таблицу большое количество записей (1 000 000). Тут без коммита хотя бы через 10000 инсертов не обойтись. Операция довольно долгая. Порядка 3 часов. В это время коннект может обломаться. 2. В случае, если 1 000 000 инсертов не выполнились, необходимо вернуть таблицы состояние до начала всех операций. Я это хочу сделать так: 1. Создать копию таблицы с другим именем. 2. Проделать все действия с копией. 3. Удалить старую таблицу и переименовать копию. ПОследняя операция займет мало времени и поэтому вряд ли обломится ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2006, 10:51 |
|
||
|
Как создать копию таблицы в одной и той же схеме
|
|||
|---|---|---|---|
|
#18+
Реальных предложений по ссылке 2 килограмма. Исходя из дополнений, вариант с временной таблицей отбрасываем. Так как сделать из временной постоянную одним движением руки не получится. Посему делать надо как и предлагалось в одном из моих сообщений по этой ветке. 1. С помощью любого средства создать таблицу (за не имением ничего пользуемся стандартной dbschema, vi (ваш любимый текстовый редактор), dbaccess). 2. Разносим операцию переноса на 2 части - выгрузку данных в текст (unload в dbaccess) и загрузку ее с помощью вашей любимой тулзы (мне больше нравится dbload). 3. Колбасите таблицу. 3. Переименовываете таблицу. Все конечно замечательно, но обычно такой метод не работает. Поскольку в реальности таблица будет содержать foreign key, на создание которого потребуется весьма длительное время, сравнимое по времени с закачкой данных, а если их несколько, то еще и более длительное. Что в этом не ясно? Задайте вопрос, постараемся ответим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2006, 17:14 |
|
||
|
|

start [/forum/topic.php?fid=44&msg=33636297&tid=1608706]: |
0ms |
get settings: |
9ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
37ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 211ms |
| total: | 308ms |

| 0 / 0 |
