【问题标题】:Why is SQL Server deprecating SET ANSI_PADDING OFF?为什么 SQL Server 不推荐使用 SET ANSI_PADDING OFF?
【发布时间】:2009-09-12 17:51:23
【问题描述】:

根据SET ANSI_PADDING 上的 MSDN BOL(在线图书),

在 Microsoft SQL Server 的未来版本中,ANSI_PADDING 将始终为 ON,任何显式将该选项设置为 OFF 的应用程序都会产生错误。避免在新的开发工作中使用此功能,并计划修改当前使用此功能的应用程序。

我从未使用过此选项,但如果使用正确,它看起来实际上可以为charvarbinary 字段节省大量数据库空间。

为什么SET ANSI_PADDING 会过时,除了它不符合 ANSI 标准?

有什么好的理由吗?

【问题讨论】:

    标签: sql sql-server dep


    【解决方案1】:

    不是答案,只是意见:

    我个人愿意相信他们正在删除它,因为它是一个空值的痛苦。如果一个数据库对象被创建、使用、引用,或者任何它打开的情况下,第二个数据库对象在它关闭的情况下完成,并且您尝试同时使用两者(两个表,过程引用表等),您的结果可能不一致或没有意义,您需要永远弄清楚发生了什么。

    (还有其他类似的 SET 设置,而且更糟。我希望他们都弃用它们。)

    【讨论】:

    • 你的意见作为答案对我来说很有意义;)谢谢菲利普
    【解决方案2】:

    该功能根本没有使用,也不符合 ANSI,因此他们将删除它。无论ansi_padding如何,都可以节省空间,sql server可以在内部删除padding。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-09-19
      • 1970-01-01
      • 2016-02-23
      • 2017-11-04
      • 2011-10-22
      • 2011-04-11
      • 2021-10-12
      • 2012-12-07
      相关资源
      最近更新 更多