数据库设计 – 针对或将应用程序逻辑放入数据库层的参数是什么?

前端之家收集整理的这篇文章主要介绍了数据库设计 – 针对或将应用程序逻辑放入数据库层的参数是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
注意programmers.se和dba.se的受众是不同的,并且会有不同的观点,所以在这个例子中我认为在programmers.se上复制 What are the arguments against or for putting application logic in the database layer?是有效的.

我已经找不到有关dba的讨论了,原来的帖子说明了一切,所以:

Most software developers want to keep
application logic in the application
layer,and it probably feels natural
for us to keep it here. Database
developers seem to want to put
application logic in the database
layer,as triggers and stored
procedures.

Personally I would prefer to keep as
much as possible in the application
layer to make it easier to debug and
keep the responsibilities of the
layers separate.

What are your thoughts on this,and
what should or should not be ok to
implement in the database layer?

注:我不是那个问题的OP,但保留了最初的措辞.

解决方法

各种各样的想法……

您的数据库代码将比您的应用程序客户端技术更长久.
想想ADO.NET – > Linq – > EF以及各种ORM.而您仍然可以针对上述所有客户端技术运行上一个千禧年的sql Server 2000代码.

您还有多个客户端问题:我有.net,java和Excel.这是3套应用程序逻辑.

“业务逻辑”不应与“数据完整性逻辑”混淆.如果您确实有客户端启动事务并进行各种检查,那就是很多数据库调用和长事务.

应用程序逻辑不会针对高数据量进行扩展.我们使用存储过程每秒有50k行.使用Hibernate的姐妹团队每秒无法获得一个

猜你在找的MsSQL相关文章