Delphi 使用 DBNavigation 创建和修改的数据库
Delphi database created and modified using DBNavigation
伙计们正在寻找如何优化我的 DBNavigation
以在我对 DBGrid
进行更改时自动插入或更新数据库列中的日期和时间。
在数据库中我有 ID, Name, Description, Created<datetime>, Modified<datetime>
现在,当我更改 dbgrid 中的一些列并单击以保存(post 编辑)时,我想在创建或修改时插入或更新日期和时间!
我在 google 上搜索了关于此的内容,但我没有找到。
我是 delphi 的新人...
任何人都可以给我示例或 link 我可以在其中阅读更多相关信息!
您可以使用连接到网格的数据集来执行此操作。
在 IDE 中,单击数据集并转到“对象检查器事件”选项卡。
找到 BeforePost
事件,双击它并输入这样的代码
if MyDataSet.State = dsInsert then // a new record is being added
MyDataSet.FieldByName('Created').AsDateTime := Now;
else
// modifying an existing record
MyDataSet.FieldByName('Modified').AsDateTime := Now;
如评论中所述,您可以 populate/update 这些字段使用服务器上的触发器,但随后您必须刷新 Delphi 数据集中的数据以接收这些字段中的值,对于您目前所处的位置,这可能有点先进。
伙计们正在寻找如何优化我的 DBNavigation
以在我对 DBGrid
进行更改时自动插入或更新数据库列中的日期和时间。
在数据库中我有 ID, Name, Description, Created<datetime>, Modified<datetime>
现在,当我更改 dbgrid 中的一些列并单击以保存(post 编辑)时,我想在创建或修改时插入或更新日期和时间!
我在 google 上搜索了关于此的内容,但我没有找到。
我是 delphi 的新人...
任何人都可以给我示例或 link 我可以在其中阅读更多相关信息!
您可以使用连接到网格的数据集来执行此操作。
在 IDE 中,单击数据集并转到“对象检查器事件”选项卡。
找到 BeforePost
事件,双击它并输入这样的代码
if MyDataSet.State = dsInsert then // a new record is being added
MyDataSet.FieldByName('Created').AsDateTime := Now;
else
// modifying an existing record
MyDataSet.FieldByName('Modified').AsDateTime := Now;
如评论中所述,您可以 populate/update 这些字段使用服务器上的触发器,但随后您必须刷新 Delphi 数据集中的数据以接收这些字段中的值,对于您目前所处的位置,这可能有点先进。