现在再写一个数据库备份的方法,下面是调用的DBHelper里的一个方法:
public static int ExecuteQuantity(string sql, int? timeOut, params SqlParameter[] parameters) { using (SqlConnection sqlConn = new SqlConnection()) { using (SqlCommand cmd = new SqlCommand(sql, sqlConn)) { try { sqlConn.Open(); if (timeOut != null) cmd.CommandTimeout = (int)timeOut; foreach (SqlParameter parameter in parameters) { if (parameter.Value != null) { cmd.Parameters.Add(parameter); } } return cmd.ExecuteNonQuery(); } catch (SqlException ex) { throw ex; } finally { cmd.Parameters.Clear(); sqlConn.Close(); } } } }
参数sql为:
USE [master];BACKUP DATABASE TO DISK = 'D:\云迈项目\FAMS_MVC_1.0.0\FAMS.Web\DBBak\20130315143438.bak' WITH INIT;
请问大侠看看我写的哪里错了,就是报那个错呢?!
ServerVersion = “sqlConn.ServerVersion”引发了“System.InvalidOperationException”类型的异常
new SqlConnection() 没有数据库连接语句啊,还是你怕泄漏信息隐藏了
这个是DBHelper里的方法 就是这么写啊
BACKUP DATABASE @数据库名 TO DISK = 'D:\云迈项目\FAMS_MVC_1.0.0\FAMS.Web\DBBak\20130315143438.bak' WITH INIT;
string sql = "USE [master];BACKUP DATABASE @FAMS_V01 TO DISK = '" + bakPath + "' WITH INIT;"; 我加上了可是还是不行呢
@淘@淘: 你得确定对该数据库有操作BACKUP的权限,并且对D盘的文件夹有写入权限