例如,当用户要保存他刚输入的一些数据时。应用程序只是将数据发送到数据库,然后由数据库决定数据是否有效吗?还是应用程序是智能部分,检查数据是否正确?
在我上次工作的最后一个(商业)项目中,数据库非常简单。没有限制,没有视图等,一切都由应用程序控制。我认为这很糟糕,因为每次在代码中访问某个表时,都会重复检查访问是否有效的相同代码。
通过将逻辑转移到数据库中(使用函数、触发器和约束),我认为我们可以在应用程序中节省大量代码(和潜在错误)。但我担心将太多业务逻辑放入数据库中会成为回旋镖,有一天将无法维护。
是否有一些现实生活中已经验证的指导方针可供遵循?