我在下面的字符串构建查询中遇到了问题。当我执行查询时,它在列标题中打印为??????
。我想要Gujarati中的列标题,只包含以下查询(字符串构建查询(。
declare @Query1 varchar(max)
SET @Query1 ='
select RefNo as N'આવક સંદર્ભ'
from Test where 1=1'
print (@Query1)
exec (@Query1)
如果我在下面写一个简单的查询和执行,它就完美了,我的专栏标题也能很好地用古吉拉特语显示。
select RefNo as N'આવક સંદર્ભ'
from Test where 1=1.
谢谢。
使用nvarchar()
:
declare @Query1 nvarchar(max);
SET @Query1 = N'
select RefNo as N''આવક સંદર્''
from Test where 1=1'
print (@Query1)
exec (@Query1);
这里有一个db<gt;不停摆弄
我建议你这样写查询:
declare @Query1 nvarchar(max);
SET @Query1 = N'
select RefNo as [આવક સંદર્]
from Test
where 1=1'
print(@Query1)
exec sp_executesql @Query1;
原因有二:
- 字符串和日期常量只能使用单引号。不要将它们用于列名
- 使用
sp_executesql
作为一般规则,因此如果需要,可以随时传入参数