SQL Server存储过程参数是否有框字符(□)?

时间:2014-09-09 03:21:35

标签: asp.net sql-server stored-procedures

我使用ExecuteScalar()函数从ASP.Net Web服务调用存储过程。来自Web服务的输入值是正确的,没有框字符。但是当传递给SQL Server存储过程时,它就变成了这个(请注意第一行,第二行是正确的,我故意添加它只是为了比较):

enter image description here

使用SQL Server Profiler,我看到第一行中的输入参数包含不正确的框字符。复制到文本编辑器时,它会显示为我想要的内容。但查询结果不一样(第1个不正确):

enter image description here

可能是什么问题?

更新:存储过程签名(参数类型已经是NVARCHAR):

@PIT_NAME NVARCHAR(100)= NULL

1 个答案:

答案 0 :(得分:1)

请检查几件事

  1. 在进行数据库调用之前修剪字符串
  2. 如果编码可能是问题,那么请将Storedproc参数类型更改为Nvarchar(如果它是varchar