问题标签 [dbgrid]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
620 浏览

delphi - 如何制作 TMS 的 DBAdvGrid 选项卡并像标准的 Delphi DBGrid 一样插入?

TMS Software 的 DBAdvGrid 是一个支持 DB 的 StringGrid。它功能丰富,我喜欢它,但有时它的功能丰富了!我要更改哪些属性(从它们的默认值),以便当我在网格末尾使用 Tab 时插入和发布新记录,即类似于标准 DBGrid 的默认行为?

谢谢,一如既往!

0 投票
1 回答
5731 浏览

delphi - 从 dbgrid 中选择字段

我有一个链接到 DataSource(链接到 TADOTable)的 DBGrid。所有这些都通过 TADOConnection 运行并连接到 MS Access

网格包含各种值,我想在单击特定字段时对其进行编辑。我在更新普通文本字段时没有遇到任何困难,但是我无法编辑包含 OLE 对象的字段。

我想要做的是,当我单击一个字段时,我想要一个打开的对话框打开并让我选择一个文件。之后,我选择的文件必须更新为我选择的行的字段。

我该怎么做呢?

0 投票
1 回答
1373 浏览

c++ - DBGrid 按计算字段排序

我的问题是:如何通过计算字段订购 DBGrid。我正在使用 C++Builder Starter Editon,并且在此版本中没有可用的 ClientDataSet 来在字段上创建索引并按列的索引排序。所以这不是一个选项。(在许多线程中阅读此内容)我正在使用 TIBDataSet(下面的 ibds)并且正在过滤数据。工作正常....对于 DB 列,而不是计算的列...关于我如何解决这个问题的任何想法?

0 投票
2 回答
2235 浏览

java - 允许保存/加载列布局的 Java DB 网格组件

您能否建议允许向/从文件保存或加载列布局(如序列、名称、宽度等)的数据库网格组件。

我也对允许使用标准库实现此功能的方法感兴趣。

0 投票
2 回答
2253 浏览

delphi - 可编辑的 DBGrid?

我是 Delphi 的初学者,我需要帮助解决以下问题。我必须在我的表单上实现一个可编辑的 DBGrid。DBGrid 显示连接 3 个表的查询的结果。我设法使 DBGrid 可编辑,但编辑对数据库没有影响。我可以在 DBGrid 中插入、编辑或删除行,但这些更改不会保存到数据库中。我有以下设置:

我可能错过了一些东西,但我不知道是什么。任何帮助,将不胜感激!

0 投票
1 回答
1648 浏览

delphi - 如何修复 DBGrid 中的所有者绘制异常?

继续项目开始于:

如何根据其内容自动调整/缩放 DBGrid 的(或其他类似的)列宽?

我使用@alzaimar 答案根据内容宽度自动调整列,但他向我展示了如何增加宽度,而不是如何减少宽度,所以我补充了如上所示的代码:

因此,现在当我使用向下箭头键滚动时,所选行的颜色并不总是在正确的位置,如您在这张图片中看到的:

在此处输入图像描述

我做错了什么?

0 投票
2 回答
1746 浏览

delphi - 如何在显示之前操作 DB Grid 的内容?

我在存储压力的数据库表中有一个列。压力始终存储为 PSI,可以通过潜水 14.5 转换为 BAR。

用户可以使用无线电组切换 PSI/BAR 的显示。

我正在使用 aTStringGrid并且正在转换为 a TDbGrid- 这对我来说很新。

当用户切换 PSI/BAR 时,如何更新我的数据库网格中的显示?(我想我只是再次执行它的查询?或调用query.Refresh()?)但是我该如何进行转换?

  1. 可能是一个存储过程,虽然这看起来有点矫枉过正,存储过程对我来说也是新的......
  2. 通过更改SELECT我的查询语句?但我该怎么做呢?SELECT pressure / 14.5 FROM measurements? 或者怎么做?
  3. 或者有没有OnBeforeXXX()我可以编码的?或者OnGetDisplayText()类似的?

我确信这是非常基本的,但直到现在我一直在显示未经处理的数据,现在我需要一个转换函数。谷歌没有帮助,但我可能不知道该要求什么。

我还想更改列标题的文本,在“压力 (PSI)”和“压力 (BAR)”之间切换。提前感谢您的帮助。

0 投票
3 回答
460 浏览

delphi - 如何在数据库网格中显示 TIMEDIFF(现在,然后)?

抱歉,我对 DbGrids 很陌生。

我是否应该使用查询的字段编辑器并以某种方式添加一个捕获 TIMEDIFF 的新字段,然后将其添加为我的 DbGrid 中的列?

或者我可以/应该跳过字段编辑器并以某种方式将 TIMEDIFFF 声明为列?

对于这个表,我想要一个有 4 列的 DbGrid:开始时间、结束时间、持续时间、描述(run_id 是主键,不会显示)。

我对如何将数据放入“持续时间”列感到困惑......


[更新]数据源的查询是

当我在 MySql 中手动执行它时,我得到

但数据库网格中的相应列保持空白。任何人都可以帮忙吗?谢谢。


[更新] 如果有帮助,我正在使用 AnyDac。当我使用 AnYDac 查询编辑器并执行它时,该查询会在 MySql 和 Delphi IDE 中生成所有字段,包括时差。

唯一的问题是我在运行时在数据库网格中看不到它。我在设计时双击数据库网格,列是正确的。该FielName属性设置为duration,由上面显示的查询重新调整。它在数据库中不存在,而是通过查询计算出来的;这可能是问题所在吗?


[Aaaaaaaargh !!!] 有人试图“改进”我的代码并在运行时以编程方式设置查询的文本(如SELECT * FROM test_runs),从而覆盖了我的设计时查询!!由于数据库表没有duration字段,因此在数据库网格。

话已经说了,声音也提高了,现在我必须为浪费你的时间而道歉。对不起。

0 投票
1 回答
401 浏览

delphi - 数据库网格 - 我可以在第一行而不是第一列显示标题吗?

我想显示 MIN()、AVG()、MAX() 进行 5 次测量。

鉴于我的屏幕空间,垂直显示我的 DG 网格比水平显示要好得多。

我想要一个 2 列 15 行的 DB 网格,而不是反之亦然。

但是我如何将文本放入第一列(例如“Measurement 1 MIN()”)?我更喜欢使用数据库网格,而不是左侧有 15 个 TLabel 的 1 x 15 表,但我不想在我的数据库中存储“列(实际上是行)标题”。

我希望我清楚地描述了这一点 - 如果没有,请要求澄清 - 并且有人可以提供帮助。

0 投票
1 回答
1527 浏览

delphi - 数据库网格:如何使用一个当前行的列作为另一个索引?

我不确定问题标题是否足够清晰,请随时编辑。

基本上,我有两个数据库网格,它们反映了两个数据库表,每个网格显示一个。

当用户在第一个表中选择一行时(我们称之为oders),我想用与第一个表的选定行的列匹配的任何行的详细信息来更新第二个。

比如说,该表orders有一个列customer_id,我想order_details用该客户的所有订单的详细信息填充第二个表(我们称之为它),每行一个订单。

我可以连接 2@datasource、查询和连接到这两个TDbGrids,但我对如何编写order_detailsSQL 感到困惑。

SQL for ordersis just SELECT * from orders,但另一个?

我想要类似的东西SELECT * from order_details WHERE cutomer_id=<orderQuery>.currentRow.FieldByName("customer_id").AsInteger-但我不知道该怎么做...

有人可以帮我一些德尔福代码吗?

另外,一旦我建立了这种关系,在orders数据库网格中选择一个新行会自动更新order_details数据库网格吗?还是我需要为此添加代码。

Ps 我知道不再有books标签了(更遗憾的是),但是有人可以推荐一本好书来解释编程 DB 感知控件的基础知识吗?我显然需要一个。谢谢