Microsoft.SqlServer.Management.Smo获取SQL Server的恢复模型

时间:2013-11-03 21:18:16

标签: c# sql sql-server

任何人都有一个很好的参考资料,举例说明如何从C#检查SQL Server恢复模型?我一直找不到好的例子。

修改

这是我所拥有的,似乎正在运作我的问题是有更好的方法来做到这一点

public void GetSQLRecoveryMode()
{
     ServerConnection conn = new ServerConnection(dbServer, dbUser, dbPass);

     Server srv = new Server(conn);

     Database db = srv.Databases[dbDatabase];

     var recoveryModel = db.RecoveryModel;

     if (recoveryModel.ToString().Equals("Simple"))
     {
           rbLogBackup.Enabled = false;
           rbCompressedBackup.Enabled = false;
     }
     else
     {
           rbLogBackup.Enabled = true;
           rbCompressedBackup.Enabled = true;
     }
}

3 个答案:

答案 0 :(得分:4)

如果您想使用SMO,请使用以下代码:

Server srv = new Server("yourServerNameHere");

Database db = srv.Databases["YourDatabaseNameHeEre"];

var recoveryModel = db.RecoveryModel;

你有它!

答案 1 :(得分:0)

您可以从代码中执行此查询以获取恢复模型。

SELECT D.recovery_model_desc FROM sys.databases D WHERE name = 'DataBase_Name'

答案 2 :(得分:0)

下面的查询显示了sql server上数据库恢复模型的状态:

SELECT name,recovery_model_desc
FROM sys.databases
where name like '%your database name%'