gpt4 book ai didi

delphi - 如何在不是来自数据库的数据集上执行 SQL 语句?

转载 作者:行者123 更新时间:2023-12-03 18:01:56 37 4
gpt4 key购买 nike

假设我有一个应用程序,它从表示数据集的服务器获取自定义 XML 数据包。然后,假设我希望通过数据集对该数据执行 SQL 语句。我可以用什么来做到这一点?我不一定需要知道代码,但只需要使用什么来实现这一点以及如何实现的一般解释。

例如,我可能会从服务器获取 XML 格式的客户列表。然后,我可以使用任何第三方解析器将该 XML 数据转储到某个客户端数据集中。然后,对该数据集执行查询,例如 select * from customers where ZipCode = '12345' 而无需再次从服务器获取此数据。

XML 不是唯一的限制,这只是一个例子。我可能想对从 INI 文件加载的某些应用程序设置执行相同的操作。无论哪种方式,其概念都是数据的原始来源未知。

数据集是将临时数据存储在内存中还是磁盘上并不重要,但如果能将其保存在磁盘中就更好了。

最佳答案

TXQuery ( http://code.google.com/p/txquery/ ) 是一个提供本地 SQL 引擎的组件,用于针对一个或多个 TDataSet 执行 SQL 查询。我遇到的唯一问题是通过连接多个表 (TDataSets) 的查询的 TDBGrid 更新数据 - 特别是正在更新哪个表。

AnyDac v6(现为 FireDac)也有一个本地 SQL 引擎。 http://www.da-soft.com/anydac/docu/frames.html?frmname=topic&frmfile=Local_SQL.html

编辑:对于您问题中的示例 SQL,因为它只涉及一个表,所以您只需对数据集使用过滤器即可。例如

ADataSet.Filtered := False;
ADataSet.Filter := 'ZipCode=' + QuotedStr('12345');
ADataSet.Filtered := True;

关于delphi - 如何在不是来自数据库的数据集上执行 SQL 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16257469/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com