T-SQL存储过程 - 如何使参数接受整数或文本

BI *_*ude 0 sql t-sql sql-server stored-procedures

我创建了一个接受3个参数的存储过程.

@row int
,@column VARCHAR(17)
,@value int
Run Code Online (Sandbox Code Playgroud)

我希望@value参数接受文本或整数,因为它根据@column参数更新不同的列.

请指教

Jod*_*ell 5

不要这样做,使两个存储过程具有不同的签名和名称.然后你不需要@column参数,每个存储过程都很简单,行为一致.

您将为存储过程定义交易IFs和CASEes.这些过程的查询计划将表现一致,因此可以可靠地缓存,并且您将整体编写相同的数字行.

基于传递的参数执行大量不同查询的存储过程是等待发生的性能问题.