Java连接SqlServer2008,执行备份和恢复

来源:互联网 发布:sql显示前10行 编辑:程序博客网 时间:2024/05/30 04:30
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.text.SimpleDateFormat;

public class SqlServer {
public SqlServer(){}
public static void main(String[] args) {
if(args.length==1){
System.out.println("Contect to dbserver");
try
{
String dburl = "jdbc:sqlserver://localhost:1433; DatabaseName=master";
String dburl2 = "jdbc:sqlserver://localhost:1433; DatabaseName=minioa";
Class.forName( "com.microsoft.sqlserver.jdbc.SQLServerDriver" );
Connection conn = DriverManager.getConnection(dburl, "sa", "password" );
Connection conn2 = DriverManager.getConnection(dburl2, "sa", "password" );
Statement st = conn.createStatement();
System.out.println("Contect to dbserver successed!");
//关闭MiniOA的数据库回话连接
ResultSet rs = st.executeQuery("SELECT spid FROM sysprocesses WHERE (dbid IN (SELECT dbid FROM sysdatabases WHERE name = 'minioa'))");
int spid = 0;
while(!rs.isClosed()){
rs.next();
spid = Integer.valueOf(String.valueOf(rs.getObject(1)));
st.executeUpdate("kill " + spid);
System.out.println("Kill contenction " + spid);
}
rs.close();

String path = System.getProperty("user.dir");
//在 当前目录备份数据库
if("backup".equals(args[0])){
st.executeUpdate("use master backup database minioa to disk='"+ path +"\\minioa.mdf'");
System.out.println("Backup completed!");
}
//在当前目录回复数据库
if("restore".equals(args[0])){
st.executeUpdate("use master restore database minioa from disk='"+ path +"\\minioa.mdf'");
System.out.println("Restore completed!");
}
conn.close();
}catch(Exception ex){System.out.println("Contect to dbserver faield!");ex.printStackTrace();}
}else
System.out.println("Please input parameter, backup or restore");
}
}

代码下载:
http://www.minioa.net/viewtopic.php?f=13&t=112

原创粉丝点击