第一步,给SQL SERVER 代理启动

第二步,点开SQL Server 代理 → 作业→ 新建作业

第三步,在常规里写上名称就行,

第四步,再点左侧步骤,点新建,输入一个步骤名称,然后按下列代码给命令粘进去

步骤_命令
Declare @Path Nvarchar(2000)
Set @Path ='D:\XXX\Backup\'+Convert(Nvarchar,Getdate(),112)+'.bak'
Backup Database dbback To disk=@Path

注:以上黄色字可以改为,是按日期时间备份的,其中dbback是数据库名。

replace(CONVERT(varchar, getdate(), 120),':','.')

第五步,点左侧计划,

每天、每周、每月…

第六步,点确定,然后右键“开始作业”
20100124.bak

〖一心专注于.net〗sql使用convert转化长日期为短日期的总结
http://blog.csdn.net/sendling/archive/2007/08/24/1757656.aspx

最常用的是使用convert转化长日期为短日期
如果只要取yyyy-mm-dd格式时间, 就可以用 convert(nvarchar(10),field,120)
120 是格式代码, nvarchar(10) 是指取出前10位字符。
SELECT CONVERT(nvarchar(10), getdate(), 120)
SELECT CONVERT(varchar(10), getdate(), 120)
SELECT CONVERT(char(10), getdate(), 120)

使用 CONVERT

CONVERT (data_type[(length)], expression [, style])

select CONVERT(varchar, getdate(), 120 )
2004-09-12 11:06:08

select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),\'-\',\'\'),\' \',\'\'),\':\',\'\')
20040912110608

select CONVERT(varchar(12) , getdate(), 111 )
2004/09/12

select CONVERT(varchar(12) , getdate(), 112 )
20040912

select CONVERT(varchar(12) , getdate(), 102 )
2004.09.12

select CONVERT(varchar(12) , getdate(), 101 )
09/12/2004

select CONVERT(varchar(12) , getdate(), 103 )
12/09/2004

select CONVERT(varchar(12) , getdate(), 104 )
12.09.2004

select CONVERT(varchar(12) , getdate(), 105 )
12-09-2004

select CONVERT(varchar(12) , getdate(), 106 )
12 09 2004

select CONVERT(varchar(12) , getdate(), 107 )
09 12, 2004

select CONVERT(varchar(12) , getdate(), 108 )
11:06:08

select CONVERT(varchar(12) , getdate(), 109 )
09 12 2004 1

select CONVERT(varchar(12) , getdate(), 110 )
09-12-2004

select CONVERT(varchar(12) , getdate(), 113 )
12 09 2004 1

select CONVERT(varchar(12) , getdate(), 114 )
11:06:08.177

〖sqlove的专栏〗Asp.Net 备份和恢复SQL SERVER 数据库
http://blog.csdn.net/sqlove/archive/2009/02/17/3899331.aspx

我们通常备份数据库时,需要登录数据库服务器去备份和恢复,这样很不方便,其实SQL SERVER自带的命令可能让我们很简单地实现远程通过Asp.Net备份和恢复数据库。

BACKUP DATABASE '被备份的数据库名' TO DISK = '备份文件路径';
ALTER DATABASE '被恢复的数据库名' SET OFFLINE WITH ROOLBACK IMMEDIATE;
RESTORE DATABASE '被恢复的数据库名' FROM DISK = '备份文件路径';
ALTER DATABASE '被恢复的数据库名' SET ONLINE WITH ROOLBACK IMMEDIATE;

简单几条命令就可以完成数据库的备份和恢复,在Asp.Net中,可以像调用Sql语句一样调用这四条语句,轻轻松松实现SQL SERVER数据库的备份和恢复。

例子(以Northwind为例)

1、备份Northwind数据库到C盘根目录下,以'Northwind.bak'为名:
BACKUP DATABASE 'Northwind' TO DISK = 'C:\Northwind.bak';

2、恢复Northwind数据库,C盘根目录下的'Northwind.bak'备份文件:
a、将数据库置于离线状态
ALTER DATABASE 'Northwind' SET OFFLINE WITH ROOLBACK IMMEDIATE;
b、恢复Northwind数据库
RESTORE DATABASE 'Northwind' FROM DISK = 'C:\Northwind.bak';
c、将数据库置于在线状态
ALTER DATABASE 'Northwind' SET ONLINE WITH ROOLBACK IMMEDIATE;

恢复数据库

关键字:
Alter Database 被恢复的数据库名 Set Offline with Rollback immediate;
restore database 被恢复的数据库名 from disk = '备份文件路径';
Alter Database 被恢复的数据库名 Set OnLine With rollback Immediate;

string sql = "Alter Database db Set Offline with Rollback immediate;"; //db 是要备份的数据库名
sql +="restore database db from disk = '" ;
sql += Server.MapPath("").ToString() +"\\";
sql += bakname + "'";//bakname 是备份文件名
sql += "Alter Database db Set OnLine With rollback Immediate;";
try
{
连接 master 数据库 ;
执行 sql语句;
Response.Write("<script language=javascript>alert('数据恢复成功!');</script>");
}
catch(Exception ex)
{
Response.Write("<script language=javascript>alert('数据恢复失败!');</script>");
this.Label2.Text = ex.ToString();
}

备份数据库

关键字:
backup database 被备份的数据库名 to disk ='备份文件路径';

string sql = "backup database db to disk = '" + Server.MapPath("").ToString() +"\\"
+ bakname//备份文件名
+ System.DateTime.Now.DayOfYear.ToString()
+ System.DateTime.Now.Millisecond.ToString() + ".bak'";
Database data = new Database();
data.oper_data(sql);
Response.Write("<script language=javascript>alert('备份成功!');location='restore.aspx'</script>");

 

感谢:jude_liu