Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Access и AdoTable [D7]


Dima L ©   (2006-10-02 12:49:00) 

В моей программе я работая с БД Access с помощью Ado. Так
Вот необходимо из одной таблицы БД перенести некоторые строки в другую таблицу. Таблицы имеют одинаковую структуру.Заранее спасибо!!!


UMU   (2006-10-03 12:28:00) [1]

С вкладки ADO на форму вынести ADOCommand
в (ADOCommand) properties->CommandText->SQL подставить

INSERT INTO Таблица1 ( Поле1, Поле2 )
SELECT Таблица2.Поле1, Таблица2.Поле2
FROM Таблица2
WHERE Таблица2.Поле1 Not In (SELECT Таблица1.Поле1
FROM Таблица1)


Нажать ОК.

Таблица1 - таблица в которую будут добавляться данные
Таблица2 - таблица данные которой будут экспортироваться

Поле - поля который будут добавляться

в WHERE - пишем нужное условие. В данном примере  добавление осуществляется, если значения Поле1 из Таблица2 несовпадают с Поле1 Таблицы1.

Пример использования:

procedure TForm1.Button1Click(Sender: TObject);
Begin
 ADOCommand1.Execute;
End;


Dima L   (2006-10-03 06:12:00) [2]

Что имеется в виду под Name и Summ, и в куда помещается такой код.


UMU   (2006-10-02 12:58:00) [3]

Может это?

Запрос на добавление: Две таблицы одинаковой структуры и одинаковыми данными. Добавить только новые записи.

Вариант1

INSERT INTO Таблица1 ( Name, Summ )
SELECT Таблица2.Name, Таблица2.Summ
FROM Таблица2 LEFT JOIN Таблица1 ON Таблица2.Name = Таблица1.Name
WHERE Таблица1.Id Is Null;


===========

Вариант 2

INSERT INTO Таблица1 ( Name, Summ )
SELECT Таблица2.Name, Таблица2.Summ
FROM Таблица2
WHERE Таблица2.Name Not In (SELECT Таблица1.Name
FROM Таблица1);


Наверх

Титульная страница Поиск, карта сайта Написать письмо