本文實例講述了C#使用SQLDMO操作數據庫的方法。分享給大家供大家參考。具體分析如下:
SQLDMO.dll是隨SQL Server2000一起發布的。SQLDMO.dll自身是一個COM對象
SQLDMO(SQL Distributed Management Objects,SQL分布式管理對象)封裝 Microsoft SQL Server 2000 數據庫中的對象。SQL-DMO 允許用支持自動化或 COM 的語言編寫應用程序,以管理 SQL Server 安裝的所有部分。SQL-DMO 是 SQL Server 2000 中的 SQL Server 企業管理器所使用的應用程序接口 (API);因此使用 SQL-DMO 的應用程序可以執行 SQL Server 企業管理器執行的所有功能。
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.Application sqlapp = new SQLDMO.ApplicationClass();SQLDMO.NameList names = sqlapp.ListAvailableSQLServers();ServerList.Items.Clear();for(int i=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.SQLServer database= new SQLServerClass();try{ database.Connect(ServerList.SelectedItem.Text, "sa", ""); DataBaseList.Items.Clear(); foreach (SQLDMO.Database db in database.Databases) { DataBaseList.Items.Add(db.Name); }}catch (System.Exception ee){ DataBaseList.Items.Clear(); DataBaseList.Items.Add("無法連接所選服務器");}
然后獲取數據庫的屬性等就是手到拿來了
希望本文所述對大家的C#程序設計有所幫助。
新聞熱點
疑難解答