zoukankan      html  css  js  c++  java
  • Sqlserver:ANSI_PADDING


    SET ANSI_PADDING { ON | OFF }

    针对小于定义的列大小的值以及 char、varchar、binary 和 varbinary 数据中有尾随空格的值,此语句可以控制存储此类值的方式。
    此设置只影响新列的定义。创建列后,SQL Server 2005 将根据创建列时的设置存储这些值。现有的列不受以后对该设置更改的影响。

    下表显示在将值插入含有 char、varchar、binary 和 varbinary 数据类型的列时,SET ANSI_PADDING 设置的效果。

    设置 char(n) NOT NULL 或 binary(n) NOT NULL char(n) NOT NULL 或 binary(n) NULL varchar(n) 或 varbinary(n)

    ON

    填充原始值(char 列具有尾随空格的值,binary 列具有尾随零的值),使达到列的长度。

    如果 SET ANSI_PADDING 为 ON,则遵从与 char(n) 或 binary(n) NOT NULL 相同的规则。

    不剪裁插入 varchar 列中的字符值的尾随空格。不剪裁插入 varbinary 列中的二进制值的尾随零。不将值填充到列的长度。

    OFF

    填充原始值(char 列具有尾随空格的值,binary 列具有尾随零的值),使达到列的长度。

    如果 SET ANSI_PADDING 为 OFF,则遵从与 varchar 或 varbinary 相同的规则。

    剪裁插入 varchar 列中的字符值的尾随空格。剪裁插入 varbinary 列中的二进制值的尾随零。

    注意:
    进行填充时,char 列用空格填充,binary 列用零填充。进行剪裁时,char 列的尾随空格被剪裁,binary 列的尾随零被剪裁。

    如果是对计算列或索引视图创建或更改索引,则 SET ANSI_PADDING 必须为 ON。有关计算列的索引视图和索引必需的 SET 选项设置的详细信息,请参阅 SET (Transact-SQL) 中的“使用 SET 语句时的注意事项”。

    进行连接时,SQL Server 的 SQL Native Client ODBC 驱动程序和 SQL Native Client OLE DB 提供程序会自动将 ANSI_PADDING 设置为 ON。这可以在 ODBC 数据源、ODBC 连接特性或 OLE DB 连接属性(它们在连接前在应用程序中设置)中进行配置。对于来自 DB-Library 应用程序的连接,SET ANSI_NULL_DFLT_ON 的默认设置为 OFF。

    SET ANSI_PADDING 设置不影响 nchar、nvarchar、ntext、text、image 和大型值。它们始终显示 SET ANSI_PADDING ON 行为。这表示不剪裁尾随空格和尾随零。

    这些类型不受 SET ANSI_PADDING 设置的影响。

    如果 SET ANSI_DEFAULTS 为 ON,则启用 SET ANSI_PADDING。

    SET ANSI_PADDING 的设置是在执行或运行时设置的,而不是在分析时设置的。

  • 相关阅读:
    网站推荐:11个相似图片搜索网站(以图找图)
    逻辑回归
    关于估计、偏差以及方差
    算法面试问题集锦
    sql语句执行顺序
    五大算法之动态规划
    五大算法之回溯算法
    操作系统问题总结之处理机调度
    操作系统问题总结之进程管理
    Element-UI 去掉表格边框(表格Hover事件移除)
  • 原文地址:https://www.cnblogs.com/jinzhenshui/p/1596504.html
Copyright © 2011-2022 走看看