Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.89/19: Рейтинг темы: голосов - 19, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 62

Импорт из access в dbgrid

31.07.2013, 22:25. Показов 3600. Ответов 39
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Имеется база данных подключаемая через ADOConnection. Таблицы с данными находятся в access. Скажите как осуществить импорт данных из другой базы access с теми же таблицами в текущую базу access чтобы затем ини отображались в DBGrid.

PS Если это не возможно то как осуществить импорт данных из excell (экспорт в excell я смогу сделать) в DBGrid.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.07.2013, 22:25
Ответы с готовыми решениями:

Импорт из эксель в DBGrid
Доброго времени суток! Очень нужна помощь в импорте из Экселя первого столбца с первого листа в DBGrid на форме делфи. данные в...

Импорт в Excel из DBGrid
Как импортировать выбранные значения из DBGrid в Excel? :) Тема рядом с Вашей. Загляните!

Импорт dbf в dbgrid
добрый день. имеется следующий код, ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('SELECT * FROM 5299Ì2201.dbf'); ADOQuery1.Active:=True; ...

39
1090 / 588 / 121
Регистрация: 11.11.2008
Сообщений: 1,544
01.08.2013, 05:42
а вариант просто подменить файлик базы не канает? раз она такая же, как я понял.
или под импортом понимается добавление? если так, то надо заводить второе ADOConnection
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
01.08.2013, 10:40
Лучший ответ Сообщение было отмечено как решение

Решение

Цитата Сообщение от Simbion777 Посмотреть сообщение
как осуществить импорт данных из excell (экспорт в excell я смогу сделать) в DBGrid
Вот пример как импортировать из excell в DBGrid переделал из Delphi собственноручно

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
void __fastcall TForm1::Button1Click(TObject *Sender)
{
ADOConnection1->Close();
ADOConnection1->ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\2.xls;Extended Properties=Excel 8.0";
ADOConnection1->Open();
ADOQuery1->ConnectionString = ADOConnection1->ConnectionString;
DBGrid1->DataSource = DataSource1;
DataSource1->DataSet = ADOQuery1;
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add("SELECT * FROM [Ëèñò1$]");
ADOQuery1->Open();
int i, a_max = 0;
 
 for(int a = 0; a < ADOQuery1->FieldCount; a++)
 {
    ADOQuery1->First();
    i = 0;
    while(!ADOQuery1->Eof)
    {
      i = Canvas->TextWidth(ADOQuery1->Fields->Fields[a]->AsString);
      if(i > a_max)
      {
       a_max = i;
      }
      ADOQuery1->Next();
    }
   DBGrid1->Columns->Items[a]->Width = a_max+5;
 }
}
3
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 62
01.08.2013, 13:40  [ТС]
Цитата Сообщение от AntonChik Посмотреть сообщение
а вариант просто подменить файлик базы не канает? раз она такая же, как я понял.
или под импортом понимается добавление? если так, то надо заводить второе ADOConnection
Сделал другую форму на ней запихнул компоненты ADOConection1, ADOConection2, ADOTable1, ADOTable2, DateSourse1, DateSourse2, DBGrid1, DBGrid2.

Как добавлять строки из нижней таблицы в верхнюю подскажите код.

Строки в нижней таблице будут добавляться

0
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 62
01.08.2013, 13:51  [ТС]
Вот пример как импортировать из excell в DBGrid переделал из Delphi собственноручно
За код спасибо работает..

А как организовать добавление строк через два ADOConnection
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
01.08.2013, 14:24
Цитата Сообщение от Simbion777 Посмотреть сообщение
А как организовать добавление строк через два ADOConnection
Из скриншота я вижу что в таблицах абсолютно одинаковые строки зачем добавлять дубликаты?
0
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 62
01.08.2013, 15:06  [ТС]
Цитата Сообщение от Sasha Посмотреть сообщение
Из скриншота я вижу что в таблицах абсолютно одинаковые строки зачем добавлять дубликаты?
Дело в том что нижняя таблица будет заполняться и со временем количество строк в нижней таблице будет больше чем в верхней вот и необходимо потом добавить строки из нижней таблицы в верхнюю.

Нижняя таблица это таблица переносной базы которая лежит в другой папке и она может заполняться другим пользователем.
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
01.08.2013, 15:08
Цитата Сообщение от Simbion777 Посмотреть сообщение
Дело в том что нижняя таблица будет заполняться и со временем количество строк в нижней таблице будет больше чем в верхней вот и необходимо потом добавить строки из нижней таблицы в верхнюю.

Нижняя таблица это таблица переносной базы которая лежит в другой папке и она может заполняться другим пользователем.
Тогда тебе нужно заполнять запросом примеры есть на форуме
0
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 62
01.08.2013, 18:18  [ТС]
Цитата Сообщение от Sasha Посмотреть сообщение
Тогда тебе нужно заполнять запросом примеры есть на форуме
И как это будет выглядеть...поискал на форуме нашел пару вариантов похожих но не то что надо

А возможно ли сделать выборку ли с базой один и два что бы добавлялись записи которых нет в базе одни из второй и как это организовать... если можно подскажите код
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
01.08.2013, 21:33
Цитата Сообщение от Simbion777 Посмотреть сообщение
И как это будет выглядеть...поискал на форуме нашел пару вариантов похожих но не то что надо

А возможно ли сделать выборку ли с базой один и два что бы добавлялись записи которых нет в базе одни из второй и как это организовать... если можно подскажите код
Переместить или скопировать?
0
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 62
01.08.2013, 23:38  [ТС]
Цитата Сообщение от Sasha Посмотреть сообщение
Переместить или скопировать?
Переместить
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
02.08.2013, 00:13
Ты сам будешь выбирать строки для перемещения или необходимо, чтобы программа перемещала сама строки из одной таблицы в другую?
0
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 62
02.08.2013, 00:15  [ТС]
Цитата Сообщение от Sasha Посмотреть сообщение
Ты сам будешь выбирать строки для перемещения или необходимо, чтобы программа перемещала сама строки из одной таблицы в другую?
Чтобы сама перемещала все строки
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
02.08.2013, 00:20
из скриншота, который ты привёл я понял что поле Личный номер является уникальным и поему нужно проводить проверку чтобы не было дубликатов?
И ещё вопрос сколько строк из одной таблицы надо будет переместить за раз приблизительно хотя бы?
0
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 62
02.08.2013, 00:27  [ТС]
Цитата Сообщение от Sasha Посмотреть сообщение
из скриншота, который ты привёл я понял что поле Личный номер является уникальным и поему нужно проводить проверку чтобы не было дубликатов?
И ещё вопрос сколько строк из одной таблицы надо будет переместить за раз приблизительно хотя бы?
В поле личный номер можно заносить дубликаты и проверять его не обязательно

А возможно ли проверить количество строк из второй таблицы и перенести их сразу в первую
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
02.08.2013, 00:33
Цитата Сообщение от Simbion777 Посмотреть сообщение
А возможно ли проверить количество строк из второй таблицы и перенести их сразу в первую
Можно

Добавлено через 2 минуты
Давай названия таблиц откуда и куда и названия полей
0
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 62
02.08.2013, 00:36  [ТС]
Цитата Сообщение от Sasha Посмотреть сообщение
Можно

Добавлено через 2 минуты
Давай названия таблиц откуда и куда и названия полей

Из таблицы Кадры1 в таблицу Кадры

Таблица Кадры1 в импортируемой базе, а Кадры в главной базе

Полей очень много больше 20 достаточно показать хотя бы для 3 полей

Личный номер, Личное дело, Фамилия

По аналогии сделаю для остальных полей
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
02.08.2013, 01:02
C++
1
2
3
4
5
             ADOQuery1->Close();
             ADOQuery1->SQL->Clear();
             ADOQuery1->SQL->Add("INSERT INTO Кадры (Личный номер, Личное дело, Фамилия)");
             ADOQuery1->SQL->Add("SELECT Личный номер, Личное дело, Фамилия  FROM Кадры1");
             ADOQuery1->ExecSQL();
Добавлено через 2 минуты
Осталось додумать как из одной базы вставить строки в другую
0
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 62
02.08.2013, 01:30  [ТС]
За код спасибо

Скажите еще один вопрос для твух таблиц достаточно будет одного ADOConnection или для первой и второй таблицы надо создавать свои
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
02.08.2013, 01:33
Достаточно одного
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.08.2013, 01:33
Помогаю со студенческими работами здесь

Импорт из Excel в DBGrid
Добрый день! Подскажите пожалуйста. Хочу сделать импорт из Excel в DBGrid, вытащила на форму OpenDialog1, но он работает не так как...

Импорт даных с Excel в DBGrid
как отобразить в DBGrid нужные столбцы? вариант AdoQuery1.SQL.Text:='select * from '-не катит, если пробовать...

Delphi 7. Импорт из DBGrid в Excel
Есть DBGrid1, нужно все данные из него перенести в файл Excel, как это реализовать? Добавлено через 2 минуты Пробовал след код, но...

Импорт Данных из dbf в DBGrid
Всем добрый день! Необходимо по работе написать приложение для выгрузки данных из dbf. Никогда не имел дело с базами данных - поэтому много...

Экспорт и импорт из экселя в DbGrid
Ребят подкиньте исходничек наипростейший с 2 кнопками и гридом чтоб из экселя в таблицу вводить данные и также при нажатии кнопки выводить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru