标题:[求助]数据还原出错
只看楼主
youjianxia
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2006-5-25
得分:0 

请大家帮帮我啊,真得很急啊~~


2006-05-26 19:01
chen5322
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2006-5-25
得分:0 
我做的还原是全部用存储过程实现的

要先在数据库(master)里面建杀进程的存储过程KILLSPID和还原的储存过程
dim cn as new sqlconnect("data source=(local);database=数据库名称;integrated security=true")

cn.Open()
Dim cmdatabase As New SqlCommand
cmdatabase.connection = cn
cmdatabase.commandtext = "sp_helpdb"
cmdatabase.commandtype = CommandType.StoredProcedure
Dim Kill As New SqlCommand
Kill.connection = cn
Kill.commandtext = "[killspid]"
Kill.commandtype = CommandType.StoredProcedure
Kill.Parameters.Add("@return_value", SqlDbType.Int, 4)
Kill.parameters("@return_value").direction = ParameterDirection.ReturnValue
Kill.parameters.add("@dbname", SqlDbType.VarChar, 20)
cn.close()

接下来是在按钮的单击事件下
dim result as windows.forms.dialogresult
openfiledialog.filter="bak格式(*.bak)/*.bak"
openfiledialog.title="打开文件"
result=openfiledialog.showdialog()
if result=dialogresult.ok and len(openfiledialog.filename)>0 then
restoredisk=openfiledialog.filename
else
exit sub
end if
cmrestore.parameters(1).value=restoredb
cmrestore.parameters(2).value=restoredisk
kill.parameters(1).value=restoredb

'进行还原数据库
try
cn.open()
kill.exexutenonquery()
cmrestore.executenonquery()
catch ex as exception
label1.text=ex.tostring()
end try
cn.close


2006-05-26 19:29
chen5322
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2006-5-25
得分:0 

还原的存储过程的代码可以用BAIDU上网找下 很简单的就不多写 只要字段和长度一样就行(cmrestore.parameters(1).value=restoredb和
kill.parameters(1).value=restoredb 的参数

2006-05-26 19:32
youjianxia
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2006-5-25
得分:0 
有没有QQ,发一个给我,我直接和你联系。

2006-05-26 20:38
youjianxia
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2006-5-25
得分:0 
dim cn as new sqlconnect("data source=(local);database=数据库名称;integrated security=true")

cn.Open()
Dim cmdatabase As New SqlCommand
cmdatabase.connection = cn
cmdatabase.commandtext = "sp_helpdb"
cmdatabase.commandtype = CommandType.StoredProcedure
Dim Kill As New SqlCommand
Kill.connection = cn
Kill.commandtext = "[killspid]"
Kill.commandtype = CommandType.StoredProcedure
Kill.Parameters.Add("@return_value", SqlDbType.Int, 4)
Kill.parameters("@return_value").direction = ParameterDirection.ReturnValue
Kill.parameters.add("@dbname", SqlDbType.VarChar, 20)
cn.close()
这些代码是要写在哪里呢?是窗口还是按钮中?

还原的存储过程是写到我建的数据库还是master里面呢?
那个killspid为什么是写到master呢?

2006-05-26 22:18
youjianxia
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2006-5-25
得分:0 
谁帮帮忙啊,急死了啊~~~~


2006-05-27 20:25
youjianxia
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2006-5-25
得分:0 

大家帮帮忙啊,都快急死了啊


2006-05-28 11:25
youjianxia
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2006-5-25
得分:0 
谁来帮帮我啊~~~~~

2006-05-28 15:04
youjianxia
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2006-5-25
得分:0 
问题已解决,同学帮助!

2006-05-30 13:54



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-67018-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.323041 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved