最近在使用ADO数据表构件时发现一个问题,不知道是什么原因造成的:在ACCESS数据库中有一个“交易表”,然后通过ACCESS的查询建了一个“交易表_交*表”的查询,现在在模块中增加一个ADO数据表构件,选择设置表名称时发现没有显示“交易表_交*表”的名称,如下图:

此主题相关图片如下:

可是打开同一系统中的其他模块(使用以前版本设计的),增加ADO数据表构件,选择表时却会出现“交易表_交*表”,如图:

此主题相关图片如下:

不知道是何原因?
以下是引用引力波在2004-9-18 15:28:09的发言:
没有遇到过,你是不是连接的数据库有误啊?
不是连接数据库问题,因为使用的是同一个数据库。而且现在在后一个项目中增加ADO数据表构件仍然可以显示交*表的查询表,但是在新的模块中增加却不能显示。因为调用ACCESS中的交*表可以在搭建之星中省去很多设置才能达到的效果。
经过仔细查找,终于发现:虽然是同一个数据库,但是因为ADO数据库连接的数据库类型不一致导致了显示数据表内容的不一致。经过总结得出如下结论:
1、如果ADO数据库连接的数据库类型设置为“Ms Access”则ADO数据表构件的表名称选择中不但能显示ACCESS的表对象中的所有表,而且可以显示ACCESS查询对象中的所有表。
2、如果ADO数据库连接的数据库类型设置为“Ms Access for OLE DB”则ADO数据表构件的表名称选择中只显示ACCESS的表对象中的所有表。
3、小技巧:可以先把ADO数据库连接的数据库类型设置为“Ms Access”,在ADO数据表构件的表名称选择相应的ACCESS查询对象中的交*表,然后再把ADO数据库连接的数据库类型修改为“Ms Access for OLE DB”,程序仍然正常运行。
技巧应用:先使用ACCESS的查询对象建立基于某个数据表的交*表查询,只要数据表内容发生变化,交*表查询表也会随之改变,然后通过搭建之星的ADO数据表构件直接调用交*表,可以省去许多复杂设置统计查询所达到的效果。
希望以上数据库应用的小技巧能对广大星友们有所帮助。
不错。希望大家注意这种小的细节。这种问题很不容易发现。