Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用TDBGrid在Delphi中设置SQL数据库表(单向错误)_Delphi_Tdbgrid - Fatal编程技术网

使用TDBGrid在Delphi中设置SQL数据库表(单向错误)

使用TDBGrid在Delphi中设置SQL数据库表(单向错误),delphi,tdbgrid,Delphi,Tdbgrid,如何设置数据库的整个表以delphi形式显示?我猜想使用TDBGrid;但是,当我配置数据源(连接到查询)时,我会收到一条关于它是单向的错误消息。我听说过Clientdataset,但这似乎不起作用。请给我一些关于如何做这件事的明确指示好吗?提前谢谢你,托比 您说您正在使用TSQLQuery。这是dbExpress组件之一,其设计仅为单向(TSimpleDataSet除外)。您必须将TSQLQuery连接到TDataSetProvider和TClientDataSet,或者将查询组件更改为本地缓

如何设置数据库的整个表以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可能会很复杂。我建议

  • t在dbExpress中安装了TSimpleDatSet
  • dbGo中的TADOQUery或TADODataset
  • t在BDE中查询(不推荐)
  • FireDAC中的TFDQuery,或
  • 其他第三方查询组件

说真的,你不能在tclientdataset示例上进行谷歌搜索并找到一个?我刚刚做了,得到了10页的结果,整个第一页都是循序渐进的教程。很抱歉,这真的帮不了我。我想要一个单一的数据库表,一个网格,我做它的图形,所以我不确定你提到的第一个链接的相关性,也没有一步一步。。。我只需要一个真正基本的解释,我需要插入到网格中显示查询结果的组件。抱歉,有任何混淆如果您想使用TDBGrid或任何多记录数据感知控件,查询不能是单向的。感谢您的回复,我如何才能使其不是单向的?对不起,我真的是个初学者,不知道那是什么意思。再次感谢您使用的查询组件是什么?谢谢,我现在没有收到任何错误,所以这很好。不幸的是,当前只有一个单元格的网格中没有数据。如何填充网格?我已经对SQL查询进行了测试,结果出来了。谢谢你迄今为止的帮助!TobyYou说当clientDataset打开时。。。什么意思?谢谢,我很抱歉,哈哈,我太笨了。ClientDataSet。打开lol。非常感谢它正在工作:()()())现在快乐。谢谢