SQLDMO的应用(一)列出可用服务器、连接服务器

SQL分布式管理对象(SQL-DMO)是Microsoft SQL Server 数据库管理对象封装的集合。它能实现:

1. 完成Sql server管理任务 2. 创建和管理Sql Server对象 3. 创建和管理Sql Server Agent任务、警报等 4. Sql Server安装和配置

要在C#中使用SQL-DMO,你必须在项目中添加COM引用。组件名称为:Microsoft SQL-DMO Object Library。注意:不是在cs文件中using它,直接添加引用就可以使用了!

有这么一个项目,需要用户自己管理数据库的日常操作,包括新增数据库、注册数据库、备份、恢复、删除等,这其中可能会列出网络上的服务器,列出服务器上的数据库,要求详细的出错提示等。而这些处理,如果使用SQL-DMO,将会非常简单。

列出网络上的SQL Server服务器,并别把服务器添加到一个comboBox中去:

这需要用到NameList 对象和ApplicationClass 对象,具体代码如下

SQLDMO.NameList names;

SQLDMO.ApplicationClass ac = new SQLDMO.ApplicationClass();

names = ac.ListAvailableSQLServers();



for (int i = 1; i < names.Count; i++)

{

     ListItem li = new ListItem(i.ToString(), names.Item(i));

     comboBox1.Items.Add(li);

}

接下来,我们就要对数据库进行连接了.我们知道,连接有2种方式:Sql Server认证和Windows认证。那么,该如何处理呢。

我们在Form中添加2个RadioButton,分别用于选择是哪种认证方式,然后再添加2个TextBox,用于当选择Sql 认证时,要求用户输入登录的数据库用户名和密码。

SQLDMO.SQLServerClass oServer = new SQLDMO.SQLServerClass();

try

{

if (rbtnSqlCer.Checked)  //rbtnSqlCer为Sql server认证的RadioButton                     oServer.Connect(ServerName, username, password);   //ServerName为服务器名,username为用户名,Password为密码                 else                 {                     oServer.LoginSecure = true;                     oServer.LoginTimeout = 15;                     oServer.Connect(ServerName, null, null);                 }

}

如果我们需要SQLDMO提供详细的错误信息,那么我们还需要对Catch进行处理

catch (Exception ee)             {                     oServer.DisConnect();                     oServer = null;                     MessageBox.Show(ee.Message.ToString());             }

这样,服务器是否能连接,用户名是否存在,密码是否错,都能正确的提示出来!

连接完数据库后,我们就可以继续进行操作了。下一次,我们将讨论,如果取出连接服务器的路径,让用户选择,并创建数据库。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值