国产探花免费观看_亚洲丰满少妇自慰呻吟_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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 望奎县| 安图县| 阿拉善左旗| 香港 | 上杭县| 宜昌市| 霸州市| 宜良县| 祁门县| 沙湾县| 榆树市| 临漳县| 景东| 安康市| 岐山县| 奈曼旗| 谢通门县| 彭山县| 家居| 宜川县| 顺平县| 九江县| 定日县| 绥化市| 桐庐县| 惠东县| 镇雄县| 武山县| 新民市| 台州市| 镇江市| 灌阳县| 靖西县| 资兴市| 分宜县| 禄丰县| 犍为县| 桃园县| 正蓝旗| 昔阳县| 元朗区|