数据库远程备份
我做了一个程序,要求可以备份数据,
我用的是SQL SERVER 2000,数据库和程序不在一个机子上,
请问怎么备份了???/
------解决方案--------------------那么拧的人,哈哈
------解决方案--------------------C#实现SQLSERVER2000数据库备份还原的两种方法
: 方法一(不使用SQLDMO):
///
///备份方法
///
SqlConnection conn = new SqlConnection( "Server=.;Database=master;User ID=sa;Password=sa; ");
SqlCommand cmdBK = new SqlCommand();
cmdBK.CommandType = CommandType.Text;
cmdBK.Connection = conn;
cmdBK.CommandText = @ "backup database test to disk= 'C:\ba ' with init ";
try
{
conn.Open();
cmdBK.ExecuteNonQuery();
MessageBox.Show( "Backup successed. ");
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
conn.Close();
conn.Dispose();
}
///
///还原方法
///
SqlConnection conn = new SqlConnection( "Server=.;Database=master;User ID=sa;Password=sa;Trusted_Connection=False ");
conn.Open();
//KILL DataBase Process
SqlCommand cmd = new SqlCommand( "SELECT spid FROM sysprocesses ,sysdatabases WHERE sysprocesses.dbid=sysdatabases.dbid AND sysdatabases.Name= 'test ' ", conn);
SqlDataReader dr;
dr = cmd.ExecuteReader();
ArrayList list = new ArrayList();
while(dr.Read())
{
list.Add(dr.GetInt16(0));
}
dr.Close();
for(int i = 0; i < list.Count; i++)
{
cmd = new SqlCommand(string.Format( "KILL {0} ", list), conn);
cmd.ExecuteNonQuery();
}
SqlCommand cmdRT = new SqlCommand();
cmdRT.CommandType = CommandType.Text;
cmdRT.Connection = conn;
cmdRT.CommandText = @ "restore database test from disk= 'C:\ba ' ";
try
{
cmdRT.ExecuteNonQuery();
MessageBox.Show( "Restore successed. ");
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
conn.Close();
}