2011-12-08 10 views

risposta

12

È possibile eseguire un ALTER DATABASE <mydb> SET READ_ONLY per mettere un database in modalità di sola lettura.

Se si desidera il comando a fallire se non può essere eseguita immediatamente si specifica in questo modo:

ALTER DATABASE <mydb> 
    SET READ_ONLY 
    WITH NO_WAIT 

Se si vuole rendere rollback tutte le connessioni aperte si specifica il comando come questo:

ALTER DATABASE <mydb> 
    SET READ_ONLY 
    WITH ROLLBACK IMMEDIATE 

Queste opzioni sono ben documentate nel SQL Server Books online

+0

Grazie, questo sembra funzionare alcuni dei momenti, ma la metà delle volte mi eseguire la query (in SQL Server Mana gement Studio) l'esecuzione si blocca e non ritorna ... – user1088045

+0

È possibile specificare 'WITH NO_WAIT' in modo che fallisca immediatamente quando non è possibile eseguire il comando a causa di transazioni aperte ecc. Oppure è possibile specificare' WITH ROLLBACK IMMEDIATE' per renderlo rollback tutte le transazioni aperte. –

Problemi correlati