设置ANSI_PADDING但仍无法插入填充空格值

时间:2015-11-17 09:42:50

标签: sql sql-server sql-server-2008

我在列上设置了ANSI_PADDING ON。 但是当我在字符串'SS ''SS '的末尾插入包含不同数量空格的字符串时,我在对象错误中得到重复键。

在SQL服务器中,我看到最后没有空格的字符串。

任何想法为什么SQL仍然修剪我的字符串并将它们作为相同的字符串处理。

2 个答案:

答案 0 :(得分:1)

MSDN非常清楚地说:

  

SET ANSI_PADDING设置不会影响SQL Server是否填充   在比较它们之前的字符串。 SET ANSI_PADDING仅影响是否   从插入表中的值中修剪尾随空白,   因此会影响存储,但不会影响比较。

答案 1 :(得分:0)

尝试这个,创建后改变你的表

convert -size 50x50 xc:red xc:lime xc:blue +append image.gif
  

设置上的ANSI_PADDING仅影响新列的定义。创建列后,SQL Server会根据创建列时的设置存储值。以后更改此设置不会影响现有列。