程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> 使用SQLDMO從SQLServer中獲取信息

使用SQLDMO從SQLServer中獲取信息

編輯:關於SqlServer
 提要:
  ms sql server提供了一個非常方便的COM組件“SQLDMO”來幫助我們獲取和管理SQL Server。在這裡提供一些想法和實現。
  系統要求:
  Windows2000server
  vs.Net rc3
  SQL Server 2000
  正文:
  1.在.Net中使用sqldmo.dll
  path :>tlbimp sqldmo.dll /out : rc3sqldmo.dll
  創建一個新的C#項目(winform, library....),添加引用,選擇Browse,找到rc3sqldmo.dll,加入。
  2.查看rc3sqldmo.dll的結構
  打開object vIEw,選擇rc3sqldmo,你能浏覽所有的屬性、方法和事件的定義。
  3.使用rc3sqldmo
  獲得連接:
  rc3sqldmo.sqlserver2 MySQLsvr = new rc3sqldmo.sqlserver2class();
  
  MySQLsvr .connect("sqlservername","uid","pws");
  
  獲得數據庫信息:
  rc3sqldmo.databases mydbs=MySQLsvr.databases;
  rc3sqldmo.database2 mydb =new rc3sqldmo.database2class();
  mydb=mydbs.item("dbname","owner"); 或mydb=MySQLsvr.databases.item("dbname","owner");
  
  獲得表和字段的信息:
  rc3sqldmo.Tables mytbls= MySQLsvr.databases.item("dbname","owner").tables;
  rc3sqldmo.table2 mytbl = new rc3sqldmo.table2class();
  mytbl = mytbls.item("tablename","owner");或
  mytbl = MySQLsvr.databases.item("dbname","owner").tables.item("tablename","owner");
  string[3] mylist = new string[3];
  rc3sqldmo.column2 myfIEld = new rc3sqldmo.column2class();
  foreach(object o in mytbl.columns)
  {
  myfIEld = (rc3sqldmo.column2) o;
  mylist[0]=myfIEld.name;
  mylist[1] = myfIEld.datatype;
  mylist[2] =myfIEld.length.tostring();
  }
  
  獲得存儲過程的信息:
  rc3sqldmo.storedprecudure2 mysp = new rc3sqldmo.storedprecudure2class();
  mysp =MySQLsvr.batabase.itrm("dbname",owner).storedprecudures.item[B("spname",owner)]
  
  用途的討論:
  動態管理SQL Server
  動態獲得table,storedprecudure的結構信息
  還能增加,修改所有SQL Server object的內容。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved