Главная страница
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.019 c
3-1085565057
sizmrebi
2004-05-26 13:50
2004.06.20
SQL 2000 Personal


6-1082989601
Style
2004-04-26 18:26
2004.06.20
Как програмно узнать сетевое имя рабочей группы для 9x, NT?


3-1085599919
DIS
2004-05-26 23:31
2004.06.20
сортировка в столбце DbGrid


1-1086256683
Ruslan
2004-06-03 13:58
2004.06.20
Есть массив байт (Array of Byte) . Как в него поместить число ?


1-1086735987
ivan9991
2004-06-09 03:06
2004.06.20
Форму в поток