Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come rinominare tutti i vincoli predefiniti in base agli standard di denominazione o alla convenzione di denominazione in SQL Server - Tutorial SQL Server / TSQL Parte 93

Scenario:

Stai lavorando come sviluppatore di SQL Server, devi preparare gli script che possono essere utilizzati per rinominare i vincoli predefiniti secondo gli standard della tua azienda. La tua azienda desidera assegnare un nome ai vincoli predefiniti, ad esempio "DF_SchemaName_TableName_ColumnName"

Soluzione:

È possibile utilizzare sp_rename Stored procedure per rinominare i vincoli predefiniti. Per rinominare un singolo vincolo predefinito possiamo utilizzare uno script come di seguito
Exec sp_rename 'Current_Default_Constraint_Name','New Default Constraint Name'
poiché dobbiamo eseguire questo script per tutti i vincoli predefiniti, possiamo utilizzare la query seguente per generate rename Default Constraints.
 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
 
 
Eseguo la query sopra su uno dei database e ho ottenuto i risultati sotto. Se vuoi escludere alcune tabelle puoi sempre filtrarle nella clausola where.
Come rinominare tutti i vincoli predefiniti nel database di SQL Server in base alla convenzione di denominazione

Video demo:come rinominare tutti i vincoli predefiniti in base alle convenzioni di denominazione nel database di SQL Server