T-SQL多行字符串不带缩进字符。
T-SQL多行字符串不带缩进字符。
这似乎很简单...
如何存储多行字符串以保持代码的良好格式。
这样做很丑陋
DECLARE @myStr NVARCHAR(MAX) SET @myStr = '这表示一个非常长的 需要多行的字符串, 伙计。'
但上述结果是正确的字符串输出:
SELECT @myStr '这表示一个非常长的字符串,需要多行, 伙计。'
这样做可以更容易阅读我的代码:
DECLARE @myStr NVARCHAR(MAX) SET @myStr = '这表示一个非常长的 需要多行的字符串, 伙计。'
但结果是这样的:
SELECT @myStr '这表示一个非常长的 需要多行的字符串, 伙计。'
是否有一种特殊的方法来转义多行字符串中的制表符(就像其他编程语言一样)..
T-SQL多行字符串没有缩进字符的问题是指在T-SQL中如何表示多行字符串而不使用缩进字符。在T-SQL中,使用反斜杠("\")可以实现多行字符串的表示。例如,使用
SET = 'This represents a really long \ string that i need multiple lines for, \ dude.'
可以表示一个需要多行的字符串。然而,如果在反斜杠前有空格,则无法实现预期的效果。此外,如果使用空格代替制表符,则无法实现预期的效果,除非只使用一个空格。
对于这个问题,有一个解决方法是将多个字符串进行连接。可以使用字符串连接操作符(+)来连接多个字符串。例如,使用line 1 ' + 'line 2' + ...
可以将多个字符串连接起来。另外,如果想在文本字符串中添加或保留换行符,可以参考stackoverflow.com/questions/36608252。
至于问题的原因,可能是因为在测试时将整个字符串放在一个缩进块中,导致无法实现预期的效果。同时,也需要了解用户希望字符串的显示效果是什么样的,是否希望是一行连续的字符串,是否在每行前有多余的空格,以及使用不同的字符串连接方式是否有所区别等等。
最后,需要了解用户是如何显示字符串的。是通过在SSMS中使用SQL的SELECT语句显示,还是通过控制台模式的C#应用程序显示,或者其他方式。