C# 实体框架6的SQL数据库备份
我正在使用此代码进行数据库备份。它工作正常,但此代码正在用新文件替换以前的文件。如何更改它,使其不会出现?您可以尝试以下方法:C# 实体框架6的SQL数据库备份,c#,sql,C#,Sql,我正在使用此代码进行数据库备份。它工作正常,但此代码正在用新文件替换以前的文件。如何更改它,使其不会出现?您可以尝试以下方法: string dbname = _dbContext.Database.Connection.Database; const string sqlCommand = @"BACKUP DATABASE [{0}] TO DISK = N'{1}' WITH NOFORMAT, NOINIT, NAME = N'MajesticDb-Ali-Full Dat
string dbname = _dbContext.Database.Connection.Database;
const string sqlCommand = @"BACKUP DATABASE [{0}] TO DISK = N'{1}' WITH NOFORMAT,
NOINIT, NAME = N'MajesticDb-Ali-Full Database Backup',
SKIP, NOREWIND, NOUNLOAD, STATS = 10";
int path = _dbContext.Database.ExecuteSqlCommand(System.Data.Entity.TransactionalBehavior
.DoNotEnsureTransaction,
string.Format(sqlCommand, dbname, "MajesticDB"));
这样,备份名称“MajesticDB”就附加了日期和时间,因此每次调用备份过程时,数据库都将以不同的名称进行备份。您可以尝试以下操作:
string dbname = _dbContext.Database.Connection.Database;
const string sqlCommand = @"BACKUP DATABASE [{0}] TO DISK = N'{1}' WITH NOFORMAT,
NOINIT, NAME = N'MajesticDb-Ali-Full Database Backup',
SKIP, NOREWIND, NOUNLOAD, STATS = 10";
int path = _dbContext.Database.ExecuteSqlCommand(System.Data.Entity.TransactionalBehavior
.DoNotEnsureTransaction,
string.Format(sqlCommand, dbname, "MajesticDB"));
这样,备份名称“MajesticDB”就附加了日期和时间,所以每次调用备份过程时,数据库都将使用不同的名称进行备份。尝试这样做
string backupname= "MajesticDB" + DateTime.Now.ToString("yyyyMMddHHmm");
const string sqlCommand = @"BACKUP DATABASE [{0}] TO DISK = N'{1}' WITH NOFORMAT, NOINIT, NAME = N'MajesticDb-Ali-Full Database Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10";
int path= _dbContext.Database.ExecuteSqlCommand(System.Data.Entity.TransactionalBehavior.DoNotEnsureTransaction, string.Format(sqlCommand, dbname, backupname));
像这样试试
string backupname= "MajesticDB" + DateTime.Now.ToString("yyyyMMddHHmm");
const string sqlCommand = @"BACKUP DATABASE [{0}] TO DISK = N'{1}' WITH NOFORMAT, NOINIT, NAME = N'MajesticDb-Ali-Full Database Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10";
int path= _dbContext.Database.ExecuteSqlCommand(System.Data.Entity.TransactionalBehavior.DoNotEnsureTransaction, string.Format(sqlCommand, dbname, backupname));
您的问题是什么?您是否使用相同的名称覆盖db备份?是的,它将被覆盖。我想每天都保存一个新的time@RanaAli用您的数据库名称添加datetime。您的问题是什么?您是否用相同的名称覆盖数据库备份?是,它将被覆盖。我想每天都保存一个新的time@RanaAli用数据库名添加datetime。此行不正确
int path=\u dbContext.Database.ExecuteSqlCommand(System.Data.Entity.TransactionalBehavior.DoNotEnsureTransaction,string.Format(sqlCommand,dbBackUp,“MajesticDB”)
我想你是想把dbBackUp
放进去,而不是“MajesticDB”
,因为目前你没有重命名数据库backup@Draken编辑完成。打字错误谢谢注意。抱歉,回复和编辑太晚。此行不正确int path=\u dbContext.Database.ExecuteSqlCommand(System.Data.Entity.TransactionalBehavior.DoNotEnsureTransaction,string.Format(sqlCommand,dbBackUp,“MajesticDB”)
我想你是想把dbBackUp
放进去,而不是“MajesticDB”
,因为目前你没有重命名数据库backup@Draken编辑完成。打字错误谢谢注意。很抱歉,回复和编辑延迟。