详解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的用法

相关文章:

你感兴趣的文章:

标签云: