帮助看下winform中点击按钮备份数据库的问题,谢谢!
private void button2_Click(object sender, EventArgs e)
{
try
{
if (this.folderBrowserDialog1.ShowDialog() == DialogResult.OK)
{
string path = this.folderBrowserDialog1.SelectedPath;
string sql = string.Format("Backup database dbyizhi to disk = '{0}'", path+"\\"+"beifen");
//dbyizhi是mdb数据库名字,beifen是我打算给备份文件起的名字
OleDbConnection conn = new OleDbConnection(@"provider=Microsoft.ACE.OLEDB.12.0;
Data Source=F:\lift_manage_design\lift_manage_design\dbyizhi.mdb;Initial Catalog=dbyizhi;User ID=sa;pwd=sa");
conn.Open();
OleDbCommand command = new OleDbCommand(sql, conn);
command.ExecuteNonQuery();
//下面判断文件是否生成来确定是否备份成功
//还原是一样的.只是sql改成"RESTORE FILELISTONLY FROM DISK ='路径'"
}
}
catch (Exception err)
{
MessageBox.Show(err.Message);
}
调试不出来,好像是参数设置不大对,initial catalog,user,id,pwd都该怎么填?
谢谢了~
[解决办法]
access数据库备份的话,直接copy一份就可以吧.
[解决办法]
论坛逛的太少了啊,试试上面一排“高级”按钮,有一个长得像“代码”的按钮,点一下出来一个标签,贴代码在里面就可以了
[解决办法]
再看你的问题,调试一下你的异常信息,除了err.Message,还有其他详细的信息可以参考。
至于参数,你在服务器资源管理器下建一个连接,应该会有一个连接串的。
[解决办法]
什么数据库?ACCESS吗?如果是的话直接对数据库进行复制一份到你指定文件夹下边就可。
[解决办法]
我的思路是
你指定好你需要备份的数据库A,然后在从folderbrowerdialogue选择要备份到的地址PATH,在你确定按钮后你直接把你的数据库A用代码复制到PATH下面,那不就完成你所说的备份了吗?
ACCESS不像其他数据库那样,它本身就是以文件方式存在的。
[解决办法]
直接用File.Copy(path1,path2,true),哪里要打开数据库?
[解决办法]
我就是打算把F:\lift_manage_design\lift_manage_design\dbyizhi.mdb,这个dbyizhi.mdb备份到folderbrowerdialogue指定的路径中,能帮我短短写下么,不胜感激,确实对函数括号里的参数不大理解。
直接用File.Copy(path1,path2,true),哪里要打开数据库?
正好我闲着没事做。。。PS说一句:你这态度不对啊。都可以自己琢磨琢磨的
//点击复制
private void button2_Click(object sender, EventArgs e)
{
//源文件路径
string Opath = @"D:\Project\code\3DMine\3DMine\3DMine.accdb";
//目标路径,需指定你备份的文件名
string aaa = path + @"\3DMine_bak.accdb";
//复制
File.Copy(Opath, aaa, true);
}
//点击浏览,获取目标文件夹
string path = "";
private void button3_Click(object sender, EventArgs e)
{
if (this.folderBrowserDialog1.ShowDialog() == DialogResult.OK)
{
path = this.folderBrowserDialog1.SelectedPath;
}
}