在我的工作中,我有一个朋友坚持使用存储过程将业务逻辑保留在数据库中......
我可以用什么论据说服他不要这样做?
他想要这样做的原因是因为我们有多个具有不同平台的系统(.NET 中的 Web 应用程序与 VB.NET 和另一个在 Power Builder - Sybase 中开发的桌面应用程序)。
谢谢!
在我的工作中,我有一个朋友坚持使用存储过程将业务逻辑保留在数据库中......
我可以用什么论据说服他不要这样做?
他想要这样做的原因是因为我们有多个具有不同平台的系统(.NET 中的 Web 应用程序与 VB.NET 和另一个在 Power Builder - Sybase 中开发的桌面应用程序)。
谢谢!
我可以用什么论据说服他不要这样做?
你反对它的理由是什么?为什么一定要远离存储过程?
这实际上不是一个坏主意。如果您有用不同语言编写的不同系统访问数据库,那么将至少一些业务逻辑保留在数据库中可能会有所帮助。
我会选择网络服务有几个原因:
Edit: other user-contributed points:
专业网络服务,反对数据库逻辑:
Pro 数据库逻辑,con Web 服务:
不要屈服于教条。考虑两者的优缺点,并根据您应用的具体情况做出合理的决定。你和你的同事听起来都像是做出了一个非黑即白的情感决定。请记住:结果并不反映您作为一个人。在它投入生产后,你会发现它对你作为设计师的评价。
无论如何,您只需使用数据库来做它最擅长的事情。聚合和数据完整性之类的东西。
但每个系统都是妥协。如果您有 5 组不同的客户端,那么数据库可能是最好的地方。并非每个电子表格或 Access DB 都可以调用您漂亮的中间层 Web 服务...