C#使用SQLDMO操作数据库的方法
本文实例讲述了C#使用SQLDMO操作数据库的方法。分享给大家供大家参考。具体分析如下:
SQLDMO.dll是随SQLServer2000一起发布的。SQLDMO.dll自身是一个COM对象
SQLDMO(SQLDistributedManagementObjects,SQL分布式管理对象)封装MicrosoftSQLServer2000数据库中的对象。SQL-DMO允许用支持自动化或COM的语言编写应用程序,以管理SQLServer安装的所有部分。SQL-DMO是SQLServer2000中的SQLServer企业管理器所使用的应用程序接口(API);因此使用SQL-DMO的应用程序可以执行SQLServer企业管理器执行的所有功能。
SQLServer的大致关系:
Application-->SQLServer-->DataBase
实例SQLDMO,主要用到的是其中的以下几个类:
SQLDMO.Application(使用SQLDMO.ApplicationClass创建)、
SQLDMO.SQLServer(使用SQLDMO.SQLServerClass创建,主要用到它的Connect来连接数据库服务器)、
SQLDMO.NameList(可以通过它和Application获取服务器集合,其它的请看其API)
SQLDMO.DataBase(可以通过它和SQLServer.DataBases获取数据库集合)
示例一:获取局域网内SQL服务器列表
主要用到Application的ListAvaiableSQLServers来获取NameList,
SQLDMO.Applicationsqlapp=newSQLDMO.ApplicationClass(); SQLDMO.NameListnames=sqlapp.ListAvailableSQLServers(); ServerList.Items.Clear(); for(inti=1;i<names.Count;i++) { if(names.Item(i)!=null) ServerList.Items.Add(names.Item(i)); } if(ServerList.Items.Count>0) { ServerList.SelectedIndex=1; } else { ServerList.Text="没有可用的SQL服务器"; }
示例二:获取某个服务器下的数据库列表:
主要用到SQLServer以及其属性DataBases
SQLDMO.SQLServerdatabase=newSQLServerClass(); try { database.Connect(ServerList.SelectedItem.Text,"sa",""); DataBaseList.Items.Clear(); foreach(SQLDMO.Databasedbindatabase.Databases) { DataBaseList.Items.Add(db.Name); } } catch(System.Exceptionee) { DataBaseList.Items.Clear(); DataBaseList.Items.Add("无法连接所选服务器"); }
然后获取数据库的属性等就是手到拿来了
希望本文所述对大家的C#程序设计有所帮助。