Stored procedures 将一个控件的值保存到数据库是否优于保存所有控件?

Stored procedures 将一个控件的值保存到数据库是否优于保存所有控件?,stored-procedures,Stored Procedures,在我的职业生涯中,我遇到过几次这样的问题,但从未真正找到答案。我的问题是关于一个web表单,它包含用户可以更新的多个控件,然后将数据保存到数据库中。我现在能想到的最简单的例子是一个用户配置文件表单-请参见配置文件编辑屏幕 到目前为止,我总是将每个控件的值保存到数据库中。对我来说,让一个方法调用一个存储过程,将页面的所有表单值传递进来似乎更容易 我看到的页面似乎保存了单个控件的值,而不是整个控件集。如果页面是通过AJAX实现的,那么它看起来肯定不错,但是它更好吗?我想你需要更多的开销来完成这个任务

在我的职业生涯中,我遇到过几次这样的问题,但从未真正找到答案。我的问题是关于一个web表单,它包含用户可以更新的多个控件,然后将数据保存到数据库中。我现在能想到的最简单的例子是一个用户配置文件表单-请参见配置文件编辑屏幕

到目前为止,我总是将每个控件的值保存到数据库中。对我来说,让一个方法调用一个存储过程,将页面的所有表单值传递进来似乎更容易

我看到的页面似乎保存了单个控件的值,而不是整个控件集。如果页面是通过AJAX实现的,那么它看起来肯定不错,但是它更好吗?我想你需要更多的开销来完成这个任务,比如一个或多个?DTO、更多方法和更多存储过程

哪条路更好?有没有关于个人控制方式的例子


谢谢

我通常建议使用个体控制方法;它提供了更大的设计粒度。

取决于您所说的更好

一种方法,存储过程——编码更快,维护更容易。保存单个控件的值-是否更优化?我会把优化留到最后。看起来好多了?在这个页面上,可用性真的是一个问题吗?雅格尼-只有在性能/可用性出现问题时才修复它们。

一些想法

无论是25列还是单个列,只需对数据库进行一次调用

类似地,如果在一个编辑会话中更新6个控件,则可以在一次调用中完成,而不是在6个单独的调用中完成

您可能有带有依赖控件、链接控件或不允许的值组合的窗体:一般情况下,在一个编辑会话中会有多个控件更改:因此,请为此编写代码

审核/时间戳的一般思想是在唯一的*行*级别,而不是列