SQL Server 2016新特性:DROP IF EXISTS

Posted lonelyxmas

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Server 2016新特性:DROP IF EXISTS相关的知识,希望对你有一定的参考价值。

原文:SQL Server 2016新特性:DROP IF EXISTS

??

在我们写T-SQL要删除某个对象(表、存储过程等)时,一般会习惯先用IF语句判断该对象是否存在,然后DROP,比如:
旧版本:

IF OBJECT_ID(‘dbo.PERSON‘,‘U‘) IS NOT NULL
DROP TABLE PERSON

IF EXISTS (SELECT * FROM sys.objects where name = ‘PERSON‘)
DROP TABLE PERSON

SQL Server 2016简化了这一操作,通过下面一句简洁的SQL即可实现:
新版本(SQL Server 2016):

DROP TABLE  IF EXISTS PERSON

DROP IF EXISTS的语法如下:

DROPobject_type IFEXISTSobject_name


能够用于DROP的object_type,如Tables, Database, Function, Trigger, Stored Procedure, Column, User, Type, View, Schema,皆可套用,比如:

ALTER TABLE PERSON
DROP COLUMN If EXISTS NAME






以上是关于SQL Server 2016新特性:DROP IF EXISTS的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server 2016新特性:列存储索引新特性

SQL Server 2016新特性:Live Query Statistics

SQL Server 2016新特性:数据库级别配置

SQL Server 2016新特性:Temporal Table

SQL Server 2016新特性:In-Memory OLTP

揭秘SQL Server 2014都有哪些新特性