L
lxwizard
Unregistered / Unconfirmed
GUEST, unregistred user!
我用foxpro2.5建数据库,其中有两个表:Stations.dbf,equips.dbf
两个表中均有一字段:stationno为索引字段。
我想将Stations.dbf和equips.dbf联动起来查询(也就是stations中的一条记录
对映equips中的多条记录)。
我在Form中放了一个Table1,一个Query1,以及两个DataSource和两个DBGrid。
Query用于提取Stations中数据,而Table用于提取equips中的数据。在Query中
的SQL里面写如下:
SELECT DISTINCT
Stations."area",
Stations."County" ,
Stations."Town" ,
Stations."Stationno"
FROM Stations,Equips
WHERE (Stations.stationno=equips.stationno)
然后将Table1中的MasterField和MasterSource属性设置好,使之与Query1建立
联结,这一切应该没有问题。我是从一个例子上照抄的,只不过改了一下数据库。
(例中的数据库是用Paradox弄的)。
运行的结果是,query1返回正确的结果,而table1则针对当前指向的Stations的记录仅返回
一条记录,实际上应该为多条记录。我感到十分奇怪。我将这两个表导入Access97。然后在
BDE中注册了一个库。我只要将Query1和Table1中的databasename属性改为我注册的Access
数据库名即可访问这两个表了,这一切也不会有问题吧。其它我什么不改,运行后情况就
变了,一切正常,一对多的关系正确无误。这下我就有些头大了,我已经被Delphi的这类
问题整得没招了。在建Web数据中过程中,用DBF数据时能得到正确结果,而用Access的同
样内容的表的数据时,无返回值。现在是DBF数据有问题,而Access数据正常。
其实,同一个问题,在infopower2000中也会碰到。比如记录过滤,随infopower2000带来几个
例子,其中一个就是演示过滤功能的,我将其中的数据库换成DBF格式的则过滤功能不正常。
不信各位可以试试。
哪位高人可以指点一二,这是Delphi本身的问题呢,还是我什么地方没弄对?谢谢!
两个表中均有一字段:stationno为索引字段。
我想将Stations.dbf和equips.dbf联动起来查询(也就是stations中的一条记录
对映equips中的多条记录)。
我在Form中放了一个Table1,一个Query1,以及两个DataSource和两个DBGrid。
Query用于提取Stations中数据,而Table用于提取equips中的数据。在Query中
的SQL里面写如下:
SELECT DISTINCT
Stations."area",
Stations."County" ,
Stations."Town" ,
Stations."Stationno"
FROM Stations,Equips
WHERE (Stations.stationno=equips.stationno)
然后将Table1中的MasterField和MasterSource属性设置好,使之与Query1建立
联结,这一切应该没有问题。我是从一个例子上照抄的,只不过改了一下数据库。
(例中的数据库是用Paradox弄的)。
运行的结果是,query1返回正确的结果,而table1则针对当前指向的Stations的记录仅返回
一条记录,实际上应该为多条记录。我感到十分奇怪。我将这两个表导入Access97。然后在
BDE中注册了一个库。我只要将Query1和Table1中的databasename属性改为我注册的Access
数据库名即可访问这两个表了,这一切也不会有问题吧。其它我什么不改,运行后情况就
变了,一切正常,一对多的关系正确无误。这下我就有些头大了,我已经被Delphi的这类
问题整得没招了。在建Web数据中过程中,用DBF数据时能得到正确结果,而用Access的同
样内容的表的数据时,无返回值。现在是DBF数据有问题,而Access数据正常。
其实,同一个问题,在infopower2000中也会碰到。比如记录过滤,随infopower2000带来几个
例子,其中一个就是演示过滤功能的,我将其中的数据库换成DBF格式的则过滤功能不正常。
不信各位可以试试。
哪位高人可以指点一二,这是Delphi本身的问题呢,还是我什么地方没弄对?谢谢!