![]() |
|
|
![]()
|
|
| serjufa |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 42 Регистрация: 28.3.2003 Репутация: нет Всего: 1 |
Как создать копию таблицы?
У меня имеется db таблица. Мне нужно 1. сделать копию этой таблицы со всеми данными 2. сделать пустую копию этой таблицы (без данных). Буду благодарен за примеры. leyftd@mail |
|||
|
||||
| pigas |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 29.4.2003 Репутация: нет Всего: нет |
создать новую таблицу .
посмотреть какие поля в старой и добавить их в новую . перегнать все записи в новую . проблема будет только угадать по каким полям создать первичный индекс чтоб неболо записей с одинаковыми ключ полями я пошлю тебе исходники |
|||
|
||||
| Master |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1530 Регистрация: 13.5.2003 Где: Mother Russia Репутация: нет Всего: 10 |
А не проще ли воспользоваться "BACKUP TABLE имя [, имя] TO каталог"?
А потом можно и опустошить скопированную таблицу "TRUNCATE TABLE таблица", если таблицу очищать полностью, то эта инструкция работает гораздо быстрее "DELETE", но она может только полностью очистить таблицу. Это сообщение отредактировал(а) Master - 15.5.2003, 10:03 -------------------- Вавилон, Вавилон Что ты построил, что разрушил? Вавилон, Вавилон Плавятся души дьявольским огнем. |
|||
|
||||
| Vit |
|
|||
![]() Vitaly Nevzorov ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 10964 Регистрация: 25.3.2002 Где: Chicago Репутация: 14 Всего: 207 |
А каким языком программирования это нужно сделать?
-------------------- With the best wishes, Vit I have done so much with so little for so long that I am now qualified to do anything with nothing Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru |
|||
|
||||
| AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: нет Всего: 118 |
Если таблица без индексов, то можно просто скопировать файл
|
|||
|
||||
| Medved |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 7209 Регистрация: 15.9.2002 Где: Kazakhstan, Astan a Репутация: 1 Всего: 154 |
раз *.DB - значит Paradox. А раз Paradox - это либо Delphi, либо BDB.
Используй компонент TBatchMove. С ним очень просто работать. -------------------- |
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 29 Всего: 329 |
С помощью компонента TTable создай новую таблицу на примере старой, а текже создай поля. Вот приблизительный пример, у меня все работает:
procedure TfmMain.NewDB(Sender: TObject); var vNewDBPath: String; begin //выбираем каталог для хранения файлов БД if SelectDirectory('ВЫБЕРИТЕ КАТАЛОГ ДЛЯ ХРАНЕНИЯ'+#13+ 'НОВОЙ БАЗЫ ДАННЫХ','', vNewDBPath) then with DM do Begin //DM- имя модуля данных //создание таблицы "диски" //tCrTab - имя новой таблицы //tOpis - таблица-источник, подключена к физической таблице // с помощью компонента TDataBase tCrTab.DatabaseName:=vNewDBPath; tCrTab.TableName:='NewTable.DB';//физическое имя таблицы tCrTab.TableType:=tOpis.TableType;//nbg nf,kbws tCrTab.FieldDefs.Assign(tOpis.FieldDefs);//названия и типы полей tCrTab.IndexDefs.Assign(tOpis.IndexDefs);//названия и типы индексов tCrTab.CreateTable;//процедура создания таблицы end;// with end; |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |