我需要将通用消息存储在 SQL Server 表中,然后获取值并在存储过程中使用它们,例如“亲爱的约翰”,我希望能够插入在程序中获得的任何名称,而不是“约翰”。在 C# 中,如果我像这样存储文本:“Dear {0}”,那么我可以轻松地对其进行格式化:string.Format(myString, name)。除了 REPLACE 之外,我还能在 SQL Server 中执行类似的操作吗?我听说过在 SQL Server 中使用 CLR 之类的东西,但不知道它是否或如何工作。实现我的需求的最佳方法是什么?
你能帮忙吗?
谢谢。
最佳答案
xp_sprintf可能就是您正在寻找的:
DECLARE @ret_string varchar (255)
EXEC Master.DBO.xp_sprintf @ret_string OUTPUT, '(%s, %s)', 'Hello', 'World'
PRINT @ret_string
输出(Hello,World)
关于c# - 在 SQL Server 中使用占位符格式化字符串,就像在 C# 中一样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16943013/