这篇文章给大家介绍如何理解Ansi_Padding的用法,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
你对Ansi_Padding的用法是否了解,这里和大家分享一下,当设置为OFF时,剪裁varchar列的尾随空格和varbinary列的尾随零。该设置只影响新列的定义。
关于Ansi_Padding的用法
当设置为ON时,不剪裁字符值中插入到varchar列的尾随空格和二进制值中插入到varbinary列的尾随零。不将值按列的长度进行填充。当设置为OFF时,剪裁varchar列的尾随空格和varbinary列的尾随零。该设置只影响新列的定义。
SETANSI_PADDING为ON时,将允许空值的Char(n)和binary(n)列填充到列长,而当SETANSI_PADDING为OFF时,将剪裁尾随空格和零。始终将不允许空值的Char(n)和binary(n)列填充到列长。
示例代码:
SETANSI_PADDINGON GO PRINT'TestingwithANSI_PADDINGON' GO CREATETABLEt1 (charcolchar(16)NULL, varcharcolvarchar(16)NULL, varbinarycolvarbinary(8)) GO INSERTINTOt1VALUES('Noblanks','Noblanks',0x00ee) INSERTINTOt1VALUES('Trailingblank','Trailingblank',0x00ee00) SELECT'CHAR'='>'+charcol+'<','VARCHAR'='>'+varcharcol+'<', varbinarycol FROMt1 GO SETANSI_PADDINGOFF GO PRINT'TestingwithANSI_PADDINGOFF' GO CREATETABLEt2 (charcolchar(16)NULL, varcharcolvarchar(16)NULL, varbinarycolvarbinary(8)) GO INSERTINTOt2VALUES('Noblanks','Noblanks',0x00ee) INSERTINTOt2VALUES('Trailingblank','Trailingblank',0x00ee00) SELECT'CHAR'='>'+charcol+'<','VARCHAR'='>'+varcharcol+'<', varbinarycol FROMt2 GO DROPTABLEt1 DROPTABLEt2 GO
关于如何理解Ansi_Padding的用法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。