> 数据库 > SQL Server 2016 >

SQL Server 2016新特性:DROP IF EXISTS

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

 

  1. IF OBJECT_ID('dbo.PERSON','U') IS NOT NULL  
  2. DROP TABLE PERSON  
  3.   
  4. IF EXISTS (SELECT * FROM sys.objects where name = 'PERSON')  
  5. 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,皆可套用,比如:

 

  1. ALTER TABLE PERSON  
  2. DROP COLUMN If EXISTS NAME  

 

 

 


(责任编辑:IT)