Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.07.2011, 23:07   #1
betirsolt
Форумчанин
 
Регистрация: 20.07.2009
Сообщений: 421
По умолчанию Импорт dbf таблицы в такую же dbf таблицу

привет, есть dbf базы, они все одинаковые,но мне нужно их соединить,чтоб все эти записи были в одном dbf файле, какой самый лучший спобок это сделать?на данном этапе у меня есть две сетки dbgrid которые показывают данные из двух таблиц и мне нужно их соединить
Уважаемые модераторы, Я всячески стараюсь не нарушать правила сайта, будьте снисходительны
betirsolt вне форума Ответить с цитированием
Старый 20.07.2011, 23:23   #2
Karabash
Форумчанин
 
Регистрация: 26.07.2009
Сообщений: 216
По умолчанию

Сетки, сетками, а какими компонентами добываются данные для этих сеток?
Karabash вне форума Ответить с цитированием
Старый 21.07.2011, 16:26   #3
betirsolt
Форумчанин
 
Регистрация: 20.07.2009
Сообщений: 421
По умолчанию

использую adoconnection, adoquery, datasoure
Уважаемые модераторы, Я всячески стараюсь не нарушать правила сайта, будьте снисходительны
betirsolt вне форума Ответить с цитированием
Старый 21.07.2011, 16:46   #4
Pavels13
 
Регистрация: 21.05.2008
Сообщений: 8
По умолчанию

Самое простое и быстрое создай 3-ю dbf-ку и кинь ещё adoquery.
Перебором записей заноси в новую таблицу.
Pavels13 вне форума Ответить с цитированием
Старый 21.07.2011, 20:20   #5
ReportCube
Форумчанин
 
Аватар для ReportCube
 
Регистрация: 11.03.2011
Сообщений: 426
По умолчанию

А зачем соединять? Хотите изменить базу данных или получить данные с разных Dbase-файлов в результирующий запрос?
ReportCube вне форума Ответить с цитированием
Старый 21.07.2011, 22:57   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
какой самый лучший спобок это сделать?
ХМ... FoxPro.
VisualObject, Vulcan на худой случай.

P.S. Я лично на фокспро обьединяю файлики такие - проще и быстрее.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.07.2011, 01:41   #7
betirsolt
Форумчанин
 
Регистрация: 20.07.2009
Сообщений: 421
По умолчанию

ну так скажите самый легкий способ, я не юзал фокспро,не иею представления даже, Stilet если подробно объяснишь то это будет очень круто
Уважаемые модераторы, Я всячески стараюсь не нарушать правила сайта, будьте снисходительны
betirsolt вне форума Ответить с цитированием
Старый 22.07.2011, 09:01   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Смотри:
http://www.firststeps.ru/foxpro/helpfox/r.php?83
http://www.firststeps.ru/foxpro/helpfox/r.php?83

Т.е.
Код:
use table1 && открываем первую таблицу
append from table2 && добавляем в текущую еще табличку\
append from table3 && добавляем в текущую еще табличку\
...
append from tableXXX && добавляем в текущую еще табличку\

Copy to НоваяТабличка.DBF && Все это спихиваем в результирующую табличку
Если влом фокспро юзать можно достать плагин к Тоталу по-моему DBView называется. Он умеет добавлять к DBF файлу другой файл, и тоже неплохо работает.

А вот Делфийские компоненты юзать я бы не рекомендовал из-за их неприспособленности к такому. Можно но не эффективно.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.07.2011, 09:23   #9
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Код:
Copy to НоваяТабличка.DBF && Все это спихиваем в результирующую табличку
Виталий, это уже не очень полезно...
Дело в том, что append'ы добавят данные в Table1.dbf (т.е. она уже будет изменена в результате)...
ну тут, конечно, вопрос, что нужно получить в конечном итоге.
если результат консолидации нужно получить в первой таблице, тогда
Код:
use Table1
append from Table2
полностью решают задачу.
если же исходные таблицы надо оставить нетронутыми, тогда:
Код:
use Table1
Copy to AllTabl
use AllTabl
append from Table2

betirsolt, расскажите подробности, откуда "ноги растут" у Вашей задачи...
Большие ли DBF файлы, часто ли их нужно объединять. Обязательно ли это делать из программы на Delphi или можно запускать внешний EXEшник ?
в принципе, если базы небольшие, то и на Delphi их можно объединить (разумеется, это неэффективно, но вместо сотых долей секунды объединение займёт будет десятые доли секунды.. в практической жизни это может оказаться удобнее, чем юзать фокспрошную программу. Если же речь идёт о больших таблицах, то тут уже надо решать - ждать (секунды/минуты/часы) или не ждать...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 22.07.2011, 10:14   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
если же исходные таблицы надо оставить нетронутыми, тогда:
Согласен. Автору стоит подробнее раскрыть задачу
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
dbf и tqueru, собрать несколько dbf файлов в одном, импорт вобщем betirsolt БД в Delphi 16 10.07.2011 13:52
импорт таблицы *.dbf в ms access через ADO ADO БД в Delphi 6 17.11.2008 15:01
импорт *.DBF в MSAccess azat БД в Delphi 3 17.01.2008 09:08
сохранение результата выборки из DBF файла в DBF файл с такой же структурой таблицы GazimagomedovM БД в Delphi 5 06.11.2007 17:58