FORMATMESSAGE関数を試す
SQL Server 2016からFORMATMESSAGE関数が拡張されて、プレイスホルダーを使って文字列を組み立てられるようになりました。
FORMATMESSAGE (Transact-SQL) | Microsoft Docs
C言語のprintfみたい感じですかね。たぶん。
文字列を埋め込むには%s
を使います。
-- 文字列を埋め込む print formatmessage(N'Hello, %s!', N'World'); /* Hello, World! */
数字の埋め込みには%d
や%u
、%x
などを使います。
-- 整数を埋め込む print formatmessage(N'Hello, %d!', 1); /* Hello, 1! */ -- 符号なし整数、符号なし16進数を埋め込む declare @value int = 10; print formatmessage(N'10進数 %u => 16進数 %x', @value, @value); /* 10進数 10 => 16進数 a */
詳しい書式の説明は、こちらのRAISERROR関数のドキュメントにあります。