使用 TDBGrid 在 Delphi 中设置 SQL 数据库 table(单向错误)
Set up SQL Database table in Delphi with TDBGrid (Unidirectional error)
如何设置整个 table 数据库以显示在我的 delphi 表单中?我假设使用 TDBGrid;但是当我配置数据源(连接到查询)时,我收到一条关于它是单向的错误消息。我听说过 Clientdataset,但这似乎不起作用。我可以就如何执行此操作提供一些明确的说明吗?提前谢谢你,托比。
你说你正在使用 TSQLQuery。这是设计为仅单向的 dbExpress 组件之一(TSimpleDataSet 除外)。您要么必须将 TSQLQuery 连接到 TDataSetProvider 和 TClientDataSet,要么将您的查询组件更改为将在本地缓冲数据的组件。
要使用 TDataSetProvider 和 TClientDataSet:
- 将 TDataSetProvider 的 DataSet 属性 设置为 SQLQuery。
- 将 TClientDataSet 的 ProviderName 属性 设置为 DataSetProvider。
- 当 ClientDataset 打开时,它将包含来自 SQLQuery 的数据。
将您的 TDataSource 的 DataSet 属性 设置为 ClientDataset,以便数据可以显示在您的 DBGrid 中。
由于您似乎不熟悉通过 Delphi 使用数据库,我建议您使用不同的查询组件,因为使用 TDataSetProvider 和 TClientDataSet 可能会很复杂。我建议
- dbExpress 中的 TSimpleDatSet,
- dbGo 中的 TADOQUery 或 TADODataset,
- BDE 中的 TQuery(不推荐),
- FireDAC 中的 TFDQuery,或
- 其他第三方查询组件。
如何设置整个 table 数据库以显示在我的 delphi 表单中?我假设使用 TDBGrid;但是当我配置数据源(连接到查询)时,我收到一条关于它是单向的错误消息。我听说过 Clientdataset,但这似乎不起作用。我可以就如何执行此操作提供一些明确的说明吗?提前谢谢你,托比。
你说你正在使用 TSQLQuery。这是设计为仅单向的 dbExpress 组件之一(TSimpleDataSet 除外)。您要么必须将 TSQLQuery 连接到 TDataSetProvider 和 TClientDataSet,要么将您的查询组件更改为将在本地缓冲数据的组件。
要使用 TDataSetProvider 和 TClientDataSet:
- 将 TDataSetProvider 的 DataSet 属性 设置为 SQLQuery。
- 将 TClientDataSet 的 ProviderName 属性 设置为 DataSetProvider。
- 当 ClientDataset 打开时,它将包含来自 SQLQuery 的数据。
将您的 TDataSource 的 DataSet 属性 设置为 ClientDataset,以便数据可以显示在您的 DBGrid 中。
由于您似乎不熟悉通过 Delphi 使用数据库,我建议您使用不同的查询组件,因为使用 TDataSetProvider 和 TClientDataSet 可能会很复杂。我建议
- dbExpress 中的 TSimpleDatSet,
- dbGo 中的 TADOQUery 或 TADODataset,
- BDE 中的 TQuery(不推荐),
- FireDAC 中的 TFDQuery,或
- 其他第三方查询组件。