SQL Server 2008使用UDF更新VarChar列?

时间:2011-12-06 20:22:00

标签: sql-server-2008 function dynamic user-defined-functions dynamic-sql

我有一个标量函数,它接受两个变量@ input1 @ input2,它返回@ input1和@input2的值(实际情况更复杂,但这提炼了想法)。

我想使用此函数更新表列中的所有行,为@ input1传递值'abc'并使用@ input2中的列名称,因此我的update语句如下所示:

update mytable set mycolumn = (select dbo.myfunc( 'abc ' , mycolumn ) )
-- prepend the literal 'abc ' to every row for column mycolumn

但这当然是不允许的。

我正在尝试根据一些字符串规则在几列上执行一些质量字符串处理。所有的想法都很受欢迎。

感谢。

1 个答案:

答案 0 :(得分:4)

UPDATE mytable
    SET mycolumn = dbo.myfunc('abc', mycolumn)