Transact-SQL DEFAULT关键字已弃用?为什么?

时间:2016-08-21 19:08:00

标签: tsql deprecated default-parameters

在MSDN文章中 Deprecated Database Engine Features in SQL Server 2016 有关DEFAULT关键字(among the others)弃用的声明。

从表中引用:

  

类别: Transact-SQL

     

不推荐使用的功能:使用DEFAULT关键字作为默认值。

     

替换:不要将DEFAULT一词用作默认值。

     

功能名称: DEFAULT关键字作为默认值。

     

功能ID: 187。

这种变化背后的逻辑是什么?我发现

没有错
CREATE FUNCTION dbo.GetFirstIdByCode(@Code nvarchar(20), @ExcludeThisId int)

并且在大多数情况下,我不使用第二个参数,请将其称为

IF dbo.GetFirstIdByCode(@Id, DEFAULT) = 0 --- etc...

当然,我可以在每次调用函数时用NULL替换DEFAULT。对我来说,这看起来像是一个进步而已。为什么要这样计划?

我应该如何调整我的编码风格?

1 个答案:

答案 0 :(得分:2)

措辞不正确:Erland为此提出了一个连接项..请参阅此connect for more details ..

粘贴连接项目中的相关项目:

Depreceated feature is ..

  

使用单词DEFAULT作为DEFAULT值。

示例:

CREATE TABLE T1
(Col1 int PRIMARY KEY,
Status varchar(10) DEFAULT 'DEFAULT' )
or
CREATE DEFAULT phonedflt AS 'DEFAULT'