扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
转帐
如果储蓄帐户的余额数目足够补偿超出的数目,这时就会发生转帐。如果满足这种条件,我们将对新行作两处修改:
|
最终结果
可以再次通过 Show SQL按钮来看看最后的结果:
图 11.显示 SQL
在点击 Close之后,您将看到 OVERDRAFT 触发器已经创建好了:
图 12. 创建 OVERDRAFT 触发器
测试
可以通过一个 update 语句来进行测试。打开命令行编写下面的语句:
|
根据我们创建的业务逻辑,这个 update 操作将启动该触发器,由于支票帐户透支,该触发器将从 savingbalance 列取出 500.00 到支票帐户。因此,SSN 为 111-11-1111 的帐户的 checkingbalance 会变成 0.00 而 savingbalance 将变成 1000.00(原来的余额 1500 - 透支的 500)。下面的查询验证了该结果:
图 13. 查询
尾声
您已经在一个假想的业务场景中创建了一个 DB2 触发器。触发器是 DB2 数据库的一个非常强大的特性,您可以使用它将业务逻辑分化到关系数据库这边。如果考虑到有多个应用程序都将与同一个数据库进行交互,您就会发现这种分化是非常强大的。在一个大型企业中,您可能多次遇到过这样的情况,即不知道要创建的是怎样一个将与数据库交互的应用程序。与其只是希望这些应用程序遵守被认为是您的组织机构的戒律的业务规则,还不如使用触发器作为您工具箱中的一种工具,以确保现在和将来与数据库进行交互的所有的应用程序强制遵守这些业务规则。一个触发器只能关联一个表,而不能关联一个视图。您也许可以考虑使用 INSTEAD OF 触发器来与视图交互。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者