首页 > 解决方案 > SQL Server 存储过程 - 我可以在一个过程中执行多项操作吗?

问题描述

所以,和以前一样,我正在尝试重新学习一堆东西......并学习一些新东西。我在年轻时曾经做过一些存储过程的工作,我可以发誓我创建了在单个过程中包含“方法”的存储过程。然后我可以引用该过程并调用一个方法。

要么是这样,要么我正在失去理智。

所以问题是,是否有可能有一个存储过程有多个可以从 C# 调用的方法?还是为我需要对数据库执行的每个“操作”设置一个存储过程是否更好(并且似乎更简单)?

标签: sqlsql-servertsqlstored-procedures

解决方案


不推荐,但我见过一个业余开发者(经常为 Fiverr 和自由职业者完成项目)做这种事情。该人有一个单一的存储过程,用于将第一个变量作为要执行的操作,第二个参数将字符串化的 json 对象用于数据。根据动作的 IF 逻辑,sp 将确定要做什么。

他这样做的理由是:

  1. Person 有一个简单的应用程序,没有理由创建简单的 CRUD 存储过程。
  2. 对单个 SP 进行了任何更改,因此如果有任何问题,他知道去哪里寻找。

不是我推荐的,但它是可行的。这就是 SQL 的美妙之处。


推荐阅读