probleem Statement –

momenteel is een van de meest irritante dingen in SQL, is om expliciet te controleren of een object bestaat voordat u het laat vallen.

tijdens het schrijven van een TSQL script/stored procedure, zijn er meerdere keren geweest wanneer ik probeer een kolom/table/trigger/index/user te laten vallen, en krijg de gevreesde foutmelding –
ongeldige objectnaam ‘object_name’

komt deze foutmelding u bekend voor?,

nieuwe syntaxis in SQL Server 2016 –

als onderdeel van de TSQL – verbeteringen introduceert SQL Server 2016 een nieuwe clausule –

DROP IF EXISTS die de kolom of beperking slechts voorwaardelijk laat vallen als deze al bestaat.
als het object niet bestaat, zal er geen fout worden gemaakt en zal de TSQL-uitvoering doorgaan.

DROP OBJECT_TYPE OBJECT_NAME

deze syntaxis ziet er heel eenvoudig en schoon uit.,

deze syntaxis is van toepassing op – Database, Table, Function, Trigger, Stored Procedure, Column, User, View, Schema, Index , Role

laten we een demonstratie bekijken voor deze nieuwe syntaxis —

laten we eerst een testtabel maken en er enkele records in invoegen –

vóór SQL Server 2016 moesten we altijd expliciet controleren of de object bestaat, en laat het dan vallen. Er zijn een paar manieren waarop we dit kunnen doen., Met de komst van SQL Server 2016 kunnen we deze operatie echter heel eenvoudig uitvoeren met een eenvoudige syntaxis –

We kunnen dit nieuwe statement ook gebruiken voor onze DML queries, om kolommen/beperkingen te laten vallen, zoals vereist., Zie hieronder —

Ik heb het volledige SQL –Script, gebruikt voor dit artikel, geüpload in deze link in GITHUB

conclusie-

de DROP indien bestaat is een eenvoudige T-SQL verbetering in SQL Server 2016, maar ik weet zeker dat het een van de meest gebruikte syntaxis in het dagelijks leven van een T-SQL ontwikkelaar zou zijn.,

gerelateerde artikelen op SQL Server 2016 –

  • dynamische gegevens maskeren in SQL Server 2016
  • tijdreizen in SQL Server 2016 met Temporele tabellen
  • ingebouwde JSON ondersteuning in SQL Server 2016
  • vergelijk uitvoeringsplannen in SQL Server 2016
  • Query Store in SQL Server 2016
  • Live Query statistieken in SQL Server 2016
  • /ul >