Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.036 c
8-1081371213
tadaam
2004-04-08 00:53
2004.06.20
tpaintbox


3-1085472676
r9000
2004-05-25 12:11
2004.06.20
Вставка записи в таблицу базы


14-1085986415
Unicode
2004-05-31 10:53
2004.06.20
PHP


4-1084300625
ipavels
2004-05-11 22:37
2004.06.20
Обновить конфигурацию оборудования


1-1086612672
AGGRESSOR
2004-06-07 16:51
2004.06.20
Продолжение выполнения кода со след. стр. после ошибки




   Наверх