B
BLUE_SKY
Unregistered / Unconfirmed
GUEST, unregistred user!
1.现有两个FOXPRO数据库,一个为商品进货表DRB,其中字段LTSL记录了进货量,LTSJ记录了进货时间;
另一个为商品出货表DCB,其中字段LTSL记录了出货量,LTSJ记录了出货时间;现在要将两个表中按
给定的时间范围将LTSL合并,并产生一个新的查询结果,结果的记录要是DRB库中的记录(DRB库的记
录数多于DCB库中的记录数),并且不能重复。我做了几种方法,均达不到要求。
代码如下:
WITH QQUU DO
BEGIN
CLOSE;
UNPREPARE;
WITH SQL DO
BEGIN
//此处用于测试两个库的联合,目的是得到从调入库中扣去调出数量后得到的记录
//但无法去掉重复的记录
CLEAR;
ADD('SELECT HH,MC,YS,NEW FROM DRB,DCB ');
ADD('UNION ');
ADD('SELECT HH,MC,YS,(DRB.NEW-DCB.NEW) AS NEW ');
ADD('FROM DRB,DCB ');
ADD('WHERE (DRB.HH=DCB.HH) AND (DRB.YS=DCB.YS) ');
ADD('ORDER BY HH,YS,NEW ');
{
//此处用于是得到从调入库中扣去调出数量后得到的记录
//但只能显示记录少的库中的记录
ADD('SELECT HH,MC,YS,(DRB.LTSL-DCB.LTSL) AS NEW ');
ADD('FROM DRB,DCB ');
ADD('WHERE (DRB.HH=DCB.HH) AND (DRB.YS=DCB.YS) AND (DRB.LTSJ=DCB.LTSJ) ');
ADD('ORDER BY HH,YS,NEW ');
}
END;
PREPARE;
OPEN;
END;
特招榜向各位大侠能求助!!
2.另有一个问题,也一直无法解决!在DELPHI中有什么方法能更新FOXPRO库的CDX索引。我在程序
中一旦使用了SQL对这个库进行添加或删除后如果用FILTER查询就会丢失一些记录,但这些记录又
都在库中,尤其是用LOCATE查询时竟会莫名其妙地死机。在TABLE的AFTEROPEN事件中加入REFRESH
也没有用!有什么好的解决方法吗?
另一个为商品出货表DCB,其中字段LTSL记录了出货量,LTSJ记录了出货时间;现在要将两个表中按
给定的时间范围将LTSL合并,并产生一个新的查询结果,结果的记录要是DRB库中的记录(DRB库的记
录数多于DCB库中的记录数),并且不能重复。我做了几种方法,均达不到要求。
代码如下:
WITH QQUU DO
BEGIN
CLOSE;
UNPREPARE;
WITH SQL DO
BEGIN
//此处用于测试两个库的联合,目的是得到从调入库中扣去调出数量后得到的记录
//但无法去掉重复的记录
CLEAR;
ADD('SELECT HH,MC,YS,NEW FROM DRB,DCB ');
ADD('UNION ');
ADD('SELECT HH,MC,YS,(DRB.NEW-DCB.NEW) AS NEW ');
ADD('FROM DRB,DCB ');
ADD('WHERE (DRB.HH=DCB.HH) AND (DRB.YS=DCB.YS) ');
ADD('ORDER BY HH,YS,NEW ');
{
//此处用于是得到从调入库中扣去调出数量后得到的记录
//但只能显示记录少的库中的记录
ADD('SELECT HH,MC,YS,(DRB.LTSL-DCB.LTSL) AS NEW ');
ADD('FROM DRB,DCB ');
ADD('WHERE (DRB.HH=DCB.HH) AND (DRB.YS=DCB.YS) AND (DRB.LTSJ=DCB.LTSJ) ');
ADD('ORDER BY HH,YS,NEW ');
}
END;
PREPARE;
OPEN;
END;
特招榜向各位大侠能求助!!
2.另有一个问题,也一直无法解决!在DELPHI中有什么方法能更新FOXPRO库的CDX索引。我在程序
中一旦使用了SQL对这个库进行添加或删除后如果用FILTER查询就会丢失一些记录,但这些记录又
都在库中,尤其是用LOCATE查询时竟会莫名其妙地死机。在TABLE的AFTEROPEN事件中加入REFRESH
也没有用!有什么好的解决方法吗?