国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

在VB.NET中應用SQLDMO

2024-07-10 13:07:12
字體:
來源:轉載
供稿:網友

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 企業管理器執行的所有功能。

  sql-dmo 用于必須包含 sql server 管理的任何自動化或 com 應用程序,例如:

  1. 封裝 sql server 作為自己的數據存儲并想盡量減少用戶的 sql server 管理任務的應用程序。

  2. 在程序本身并入了專門的管理邏輯的應用程序。

  3. 想在自己的用戶界面中集成 sql server 管理任務的應用程序。

  sqldmo對象來自sqldmo.dll,sqldmo.dll是隨sql server2000一起發布的。sqldmo.dll自身是一個com對象,因此,在你的.net項目里必須先引用它。

  得到網絡中的sql服務器的列表:

'得到sql服務器的列表
'必須安裝sql server 2000 sp2 及以上版本

dim i as short
dim sqlapp as new sqldmo.application()
dim servername as sqldmo.namelist
servername = sqlapp.listavailablesqlservers
for i = 1 to servername.count
cbserver.items.add(servername.item(i))
next

  得到指定sql服務器所有數據庫的列表:

'得到指定sql服務器所有數據庫的列表

dim sqlapp as new sqldmo.application()
dim oserver as new sqldmo.sqlserver()
oserver.connect("(local)", "sa", "sa")
cbodatabase.items.clear()
dim db as sqldmo.database
for each db in oserver.databases
me.cbodatabase.items.add(db.name)
next

  得到所有的表、視圖、存儲過程:

dim i as short
dim oserver as new sqldmo.sqlserver()
oserver.connect("(local)", "sa", "sa")
dim db as new sqldmo.database()

for i = 1 to oserver.databases.count
if oserver.databases.item(i, "dbo").name = "northwind" then exit for
next
if i > oserver.databases.count then exit sub

db = oserver.databases.item(i, "dbo")
listbox1.items.clear()
'得到所有的存儲過程
for i = 1 to db.storedprocedures.count
listbox1.items.add(db.storedprocedures.item(i, "dbo").name)
next
'得到所有的表
for i = 1 to db.tables.count
listbox1.items.add(db.tables.item(i, "dbo").name)
next
' 得到所有的視圖
for i = 1 to db.views.count
listbox1.items.add(db.views.item(i, "dbo").name)
next
 

  利用sqldmo實現帶進度條的數據庫備份:

'添加進度條progressbar1控件
'引用microsoft sqldmo object library
'聲明

public withevents bkps as sqldmo.backup

'數據庫備份操作
private sub btnbackup_click(byval sender as system.object, byval e as system.eventargs) handles btnbackup.click
dim osqlserver as new sqldmo.sqlserver()
osqlserver.loginsecure = false
osqlserver.connect("(local)", "sa", "sa") '連接服務器
me.cursor = windows.forms.cursors.waitcursor
bkps = createobject("sqldmo.backup")
bkps.database = "northwind" '指定需備份的數據庫
bkps.action = 0
bkps.files = "f:/northwind.bak" '指定備份文件
bkps.initialize = true
progressbar1.value = 0
progressbar1.maximum = 100
me.cursor = windows.forms.cursors.default()
application.doevents()
dim mousecur as cursor
me.cursor = windows.forms.cursors.waitcursor
bkps.sqlbackup(osqlserver)
progressbar1.value = 100
application.doevents()
bkps = nothing
me.cursor = windows.forms.cursors.default()
msgbox("數據庫備份完成", msgboxstyle.information, "系統消息")
end sub

'顯示進度

private sub bkps_percentcomplete(byval message as string, byval percent as integer) handles bkps.percentcomplete
progressbar1.value = progressbar1.maximum * (percent / 100)
end sub

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 抚宁县| 临沧市| 阿拉善左旗| 五大连池市| 汨罗市| 本溪市| 新泰市| 叶城县| 都兰县| 凤山市| 巴里| 蒙城县| 长宁县| 宜君县| 万盛区| 尉氏县| 富裕县| 湾仔区| 资中县| 江山市| 武隆县| 邢台县| 新平| 兴和县| 沾化县| 会宁县| 寻乌县| 灵石县| 青海省| 金湖县| 牙克石市| 察哈| 泽库县| 克拉玛依市| 张家港市| 驻马店市| 清远市| 珲春市| 远安县| 鲜城| 平邑县|