我正在为数据库中的几个操作编写存储过程,我只是想知道:
哪种方法会更好?
答案 0 :(得分:3)
我会说每个操作的单独存储过程是最好的。否则你的程序中就会得到太多的逻辑。
此外,大多数操作需要不同的参数。对于删除,您只需要主键,但对于插入,您必须提供所有不可为空的列的值。当您只想删除记录时,不希望提供虚拟插入参数。
答案 1 :(得分:2)
至少你需要使用if ... else逻辑的几个SQL命令。我发现,如果他们完成一件事,存储过程就更容易管理。
这是来自正常程序开发的可转移概念,但它更适用于存储过程。
好处:更容易测试,更有意义的SP名称(例如UpdateCustomer而不是CustomerHandler),更少的耦合/更好的内聚,更简单的程序,更少的参数。
答案 2 :(得分:0)
每个程序一次操作。
答案 3 :(得分:0)
你不爱鲍勃叔叔:Single responsibility principle
答案 4 :(得分:0)
最好针对不同的逻辑实施不同的程序。
这样,您可以轻松管理代码并减少依赖关系。