Scenario:
U werkt als SQL Server-ontwikkelaar. U moet de scripts voorbereiden die kunnen worden gebruikt om de standaardbeperkingen te hernoemen volgens de normen van uw bedrijf. Uw bedrijf wil de standaardbeperkingen een naam geven, bijvoorbeeld 'DF_SchemaName_TableName_ColumnName'Oplossing:
We kunnen sp_rename Stored Procedure gebruiken om de standaardbeperkingen te hernoemen. Om een enkele standaardbeperking te hernoemen, kunnen we een script gebruiken zoals hieronderExec sp_rename 'Current_Default_Constraint_Name','New Default Constraint Name'
omdat we dit script moeten uitvoeren voor alle standaardbeperkingen, kunnen we onderstaande query gebruiken om genereer hernoemen Standaardbeperkingen.
SELECT 'exec sp_rename ''' +Schema_name(d.Schema_id)+'.' + '' + d.Name + '''' + ',''DF_' +Schema_Name(d.schema_id) +'_'+t.name +'_'+c.name+'''' as RenameDefaultConstraintQuery FROM sys.default_constraints d INNER JOIN sys.columns c ON d.parent_object_id = c.object_id AND d.parent_column_id = c.column_id INNER JOIN sys.tables t ON t.object_id = c.object_id
Ik voer bovenstaande query uit op een van de databases en ik kreeg onderstaande resultaten. Als je sommige tabellen wilt uitsluiten, kun je ze altijd filteren in de where-clausule.
De naam van alle standaardbeperkingen in SQL Server-database wijzigen volgens de naamgevingsconventie |
Videodemo:alle standaardbeperkingen hernoemen volgens de naamgevingsconventies in de SQL Server-database