使用事务和数据感知组件编写Delphi数据库应用程序的首选方法是什么?
我必须编写一个访问InnoDB表的客户端应用程序,并在事务中执行一些主要的详细信息.在对交易进行一些研究之后(从一般的观点来看),我谦虚地得出结论,非数据感知组件和手工编码的SQL将是交易的"完美匹配"; 但数据感知组件不会.它们似乎并不是为彼此而制造的.
我真的需要使用事务,但另一方面,我不能只是抛弃数据感知组件,因为它们大大简化了事情.
有人可以赐教我吗?我一直在谷歌搜索它,但我没有找到任何有用的答案.也许是因为我的英语不够好,我的关键词有限.
顺便说一下,我正在使用Delphi 7,目前正在评估UniDAC作为数据访问库.
谢谢.
编辑
用于描述我的问题的一个方面的示例:
想象一下有一个包含2个DBGrids的表单.第一个网格是MasterGrid,上面是这些按钮:添加,编辑和删除.第二个网格是DetailGrid.如果用户单击"添加",则它将如下所示:
我知道交易应该尽可能短,但你可以看到,交易只是填写表格的用户的速度.
如果我使用的是非数据感知组件,我会根据用户输入自定义插入SQL,然后在StartTransaction和Commit之间执行SQL.所以我可以实现非常短的交易.
编辑2
我感谢你们所有人的亲切参与.我从vcldeveloper中选择答案,因为它是我目前需要的最接近的解决方案.
如何使用标准TDBGrid中的复选框来选择多个记录?或许,你对DBGrid的免费/开源姐妹有什么建议,允许任何人轻易做到这一点吗?
谢谢.