Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.20;
Скачать: CL | DM;

Вниз

слить данные из 2 таблиц   Найти похожие ветки 

 
Alex_xxx ©   (2004-05-28 15:00) [0]

Дано:
Таблица продаж (ТП): код товара, количество проданного товара
Таблица товаров (ТТ): код товара, начальное количество.
Они лежат в разных каталогах :-(
В таблица продаж постоянно добавляются записи, поэтому ее нельзя блокировать постоянно :-(
Идея: Брать из ТП и ТТ данные по коду, сливать их во временных XML файл (TADOQuery.SaveToFile(...._) ) и отключаться. Дальнейшая работа с этим XML.
Вопрос: как получить данные из таблиц из разных КАТАЛОГОВ?
Когда они в одном каталоге - проблем нет.

ADO, dBASE, D6


 
sniknik ©   (2004-05-28 15:20) [1]

запрос в нем указывать таблицы вместе с каталогом, и сливать во временные не надо блокироваться постоянно не будет.


 
Alex_xxx ©   (2004-05-28 16:38) [2]

При указании полного пути ко второй таблице в запросе ругается на то, что ядро БД не может найти объект :-(
Строка подключения:
  MyBD.ConnectionString:="Provider=MSDASQL.1;Persist Security Info=False;"+
  "Extended Properties="DSN=Файлы dBASE;DBQ="+PBD+";DefaultDir="+
  PBD+";DriverId=533;MaxBufferSize=2048;PageTimeout=5;"";
в переменной PBD храниться путь к одной из таблиц.
PBD:="c:\BD1"

Запрос:
q1.SQL.Add("select a.cardarticu,a.quantity,b.addnum1");
q1.SQL.Add("from TableProd a,"c:\BD2\TableTovar.DBF" b");
  dm1.q1.SQL.Add("where a."date"=:dt and a.KodTovara=b.KodTovara");
q1.Parameters.Items[0].Value:=StrToDate("20.04.2004");
q1.Open;


 
sniknik ©   (2004-05-28 16:56) [3]

MyBD.ConnectionString:="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\;Extended Properties=dBase IV;Persist Security Info=False";

q1.SQL.Add("select a.cardarticu,a.quantity,b.addnum1");
q1.SQL.Add("from c:\BD1\TableProd a, c:\BD2\TableTovar b");
 dm1.q1.SQL.Add("where a.[date]=:dt and a.KodTovara=b.KodTovara");
q1.Parameters.Items[0].Value:=StrToDate("20.04.2004");
q1.Open;


 
sniknik ©   (2004-05-28 17:23) [4]

вернее не так, а так

MyBD.ConnectionString:="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\;Extended Properties=dBase IV;Persist Security Info=False";

q1.SQL.Add("select a.cardarticu,a.quantity,b.addnum1");
q1.SQL.Add("from c:\BD1\TableProd a, c:\BD2\TableTovar b");
dm1.q1.SQL.Add("where a.[date]=? and a.KodTovara=b.KodTovara");
q1.Parameters.CreateParameter("dt", ftDateTime, pdInput, 0, StrToDate("20.04.2004"))
q1.Open;


и в квери ParamCheck поставь фалсе, а то на путь ругатся будет (там ":" есть)



Страницы: 1 вся ветка

Текущий архив: 2004.06.20;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.033 c
6-1082979557
V@LER@N
2004-04-26 15:39
2004.06.20
Помогите с сокетом


14-1086324658
han_malign
2004-06-04 08:50
2004.06.20
Ядерный пароль на ядерные боеголовки


3-1085706544
Slavik_v
2004-05-28 05:09
2004.06.20
Интеграция Delphi7 b Excel


1-1086192848
Damager
2004-06-02 20:14
2004.06.20
Как переименовать папку


1-1086278913
Delphin
2004-06-03 20:08
2004.06.20
OnClick