使用SQLDMO從SQL Server中擷取資訊

來源:互聯網
上載者:User
server 提要:
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的內容。
   

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.