ASP.NET远程备份恢复SQL Server数据库
///<summary>
///备份数据库到本地磁盘
///</summary>
public bool BackUp(string BackUpFile)
{
try
{
//第一步:在服务器上创建临时文件夹
ExecuteSql(@"master..xp_cmdshell 'md C:\temp'");
ExecuteSql(@"master..xp_cmdshell 'del C:\temp\*.* /q'");
//第二步:备份数据库到服务器目录
ExecuteSql(@"backup database " + DataBaseName() + @" to disk='C:\temp\HSSY'");
//第三步:共享服务器的备份目录
ExecuteSql(@"master..xp_cmdshell 'net share SQLDATABACK=C:\temp'");
//第四步:复制服务器上的备份文件到本地
File.Copy(@"\\" + ServerIP() + @"\SQLDATABACK\HSSY", BackUpFile,true);
return true;
}
catch (System.Data.SqlClient.SqlException E)
{
throw new Exception(E.Message);
}
相关文档:
由于处于系统开发的后期,需要给客户演示。发现大量的表,存在大量的测试数据。需要清除,用“delete from tablename” --> 晕死。后来发现居然有这么强大的东东。 :)
EXECUTE sp_msforeachtable 'delete from ?'
......
备份
DECLARE @strPath NVARCHAR(200)
set @strPath = convert(NVARCHAR,getdate(),120)
set @strPath='hq'+rtrim(left(replace(@strPath,'-',''),8))
set @strPath = 'D:\sqlback\mydb\' + @strPath + '.bak'
BACKUP DATABASE [mydb] TO DISK = @strPath WITH NOFORMAT, NOINIT, NAME = N'mydb-完整 数据库 备份', ......
外连接取数据如果为空,不存在AS时可能取到数据,但加了AS就会报错。比如Select Top 10 a.*,b.Class AS ClassId
,b.DeviceName from AuxBusInfo a Left Join DeviceCandidate b On a.InitialDeviceRscId = b.DeviceRscId Order By AuxBusId,当 ......