如何锁定SQL Server数据库以进行更改?

时间:2011-12-08 15:46:06

标签: sql-server locking

我想确保我的数据库(SQL Server 2008)保持不变,但在某些维护操作(备份,转换到其他数据库服务器等)期间仍然可以读取, 如何以编程方式锁定C#中的更改?

1 个答案:

答案 0 :(得分:12)

您可以执行ALTER DATABASE <mydb> SET READ_ONLY将数据库置于只读模式。

如果您希望命令在无法立即执行时失败,请按以下方式指定:

    ALTER DATABASE <mydb> 
    SET READ_ONLY
    WITH NO_WAIT

如果要将所有打开的连接回滚,请指定如下命令:

    ALTER DATABASE <mydb> 
    SET READ_ONLY
    WITH ROLLBACK IMMEDIATE

SQL Server Books online

中详细记录了这些选项