【发布时间】:2014-03-26 14:21:10
【问题描述】:
我有一个带有 TFDConnection、TFDQuery、TDataSource 和 TDBGrid 的 delphi 表单。我想显示我的查询获得的数据(从 table_1 中选择 *)并将其放入我的 DBGrid。 我已经在组件之间建立了所有连接,但是在我启动我的 DBGrid 中的查询(返回 12 行)后,显示了 12 行,但它们是空的。显然我忘记了一些阻止我在 DBGrid 中看到数据的东西。你能帮我解决我在行动中缺少的东西吗?
- 1- 将所有组件添加到表单中。
- 2- 将 FDQuery 与 FDConnection、TDataSource 与 FDQuery、DBGrid 与 TDataSource 连接。
- 3- 连接参数测试成功(问题不在我的连接参数上)
- 4- 在我的 DBGrid 中放置的行数 (12),但没有可见的信息。
- 5- 如果我循环浏览我的 FDQuery,我可以看到我需要的所有信息,但这并不能帮助我填充我的 DBGrid。
【问题讨论】:
-
它应该可以工作。我只是重复了所有步骤:一个 TFDConnection,创建到 SQLite 数据库的连接,测试连接,甚至在连接对话框 SQL 选项卡中运行一个测试查询。删除了一个 TFDQuery,将连接设置为 FDConnection1 并将 SQL 设置为之前使用的测试查询。将 FDConnection1.Connected 设置为 True,将 FDQuery1.Active 设置为 True,删除一个 TDataSource,将 DataSet 设置为 FDQuery1。删除了一个 TDBGri 并将 DBGrid1.DataSource 设置为 DataSource1,数据出现在 DBGrid 中。
-
定义为可见的字段吗?我想您可以设置所有内容,然后将字段定义为不可见。
-
如果您在选择语句中明确放弃所需的字段而不是使用 'select *' 会发生什么?
-
@KenWhite -> 问题是我必须在运行时而不是设计时填写连接参数,这就是为什么我无法在设计时对其进行测试。
-
@No'amNewman -> 如果我理解正确,您的意思是某处发生的事情使我的字段不可见 - 经过测试,它显示我的所有字段都是可见的,所以这不是我的问题所在.