In Oracle, posso emettere un DROP TABLE ... vincoli a cascata e non si lamenterà di FK, ecc.T-SQL: DROP Vincoli a cascata della tabella DROP equivalenti?
Esiste un equivalente in T-SQL?
In Oracle, posso emettere un DROP TABLE ... vincoli a cascata e non si lamenterà di FK, ecc.T-SQL: DROP Vincoli a cascata della tabella DROP equivalenti?
Esiste un equivalente in T-SQL?
NO, IN SSMS fare clic con il tasto destro del mouse sulla tabella e selezionare "tabella di script come", quindi "trascina su", quindi "nuova finestra", "file ..." o "appunti" e produrrà uno script che comprenderà tutte le gocce necessarie di FKS ecc
Per coloro che ha ottenuto qui nella speranza di una risposta più generalmente applicabile
Ciò trovare il vincolo, cadere, e poi la colonna
Grazie e un voto a Tim Lentine How to find the name of a default constraint per l'inizio.
Declare @sql VarChar(255)
Declare @tableName Varchar(255)
Declare @columnName VarChar(255)
Select @tableName = 'MyTableName'
Select @columnName = 'MyColumnName'
select @sql = o.[name] from sysobjects o
inner join syscolumns c
on o.id = c.cdefault
inner join sysobjects t
on c.id = t.id
where o.xtype = 'd'
and t.name = @tableName
and c.name = @columnName
if @sql is not null
begin
select @sql = 'Alter Table ' + @tableName + ' Drop Constraint ' + @sql + ' Alter Table ' + @tablename + ' Drop Column ' + @columnName
exec(@sql)
end
Che ha generato solo "tabella di rilascio [tabella]". Devi assicurarti che nelle opzioni abiliti gli elementi dipendenti dagli script allora funziona – rizzle
Questa non è una soluzione praticabile se devi generare uno script che altre persone possono usare poiché non è garantito che i nomi dei vincoli saranno identici su più sistemi . –