Lazarus IDE:Master-Detail数据库表和数据感知组件

时间:2016-10-26 15:30:31

标签: database one-to-many master-detail lazarus

在Lazarus中(使用版本1.6)我想使用数据感知组件创建一个表单,该组件能够显示和编辑数据库中两个或多个表之间的主 - 详细信息(一对多)关系< / strong>即可。我想知道是否可以使用内置的现成IDE GUI组件来执行此类任务,如何执行此操作,或者是否需要一些额外的代码

例如,假设有两个数据库表:出版社和书籍,每个都有自己的主键字段,但书籍表从一开始就不包含交叉引用数据:用户应该能够选择一本书,然后使用DBComboBox决定它属于哪个出版社,并且该表格将自动更新书籍表格,在book表格的相应外键字段中插入出版社ID。更多:用户应该能够创建出版社和书籍并在运行时连接它们。

换句话说,我需要构建一个GUI编辑工具,能够关联&#34; items&#34;一张桌子及其#34;类别&#34;一对多关系中的另一个表,我想知道是否可以使用现成的Lazarus数据感知控件,如何使用它们,或者是否需要一些额外的编码。

提前感谢您的时间和耐心:)

1 个答案:

答案 0 :(得分:0)

这不是主要细节,只是TDBComboBox正确配置了查找键和值属性。但这仍然是一对一的(一本书属于一家出版社)。

我通过简单地使用两个带有自己查询的小网格来模拟类别。一个列出了这个项目的类别,一个不是那个项目的类别,然后是它们之间的两个箭头(除了获取类别的主键并存储或从交叉表中删除它之外)