private void button1_Click( object sender, EventArgs e) |
{ |
|
string day = DateTime.Today.ToShortDateString(); |
string time = DateTime.Now.ToShortTimeString(); |
//string time1 = time.Substring(0, time.IndexOf(":"))+time.Substring((time.IndexOf(":")+1),time.Length-1); |
string time1 = time.Substring(0, time.IndexOf( ":" )).ToString() + time.Substring((time.IndexOf( ":" ) + 1)).ToString(); |
string date = day + time1; |
string date1 = day + date; |
int flag = 0; |
string SqlStr1 = "server=TXQ\\TXQ;uid=sa;pwd=123;database=aa" ; |
string SqlStr2 = "backup database aa to disk='C:\\DBBACK\\" + date+ ".bak'" ; |
SqlConnection con = new SqlConnection(SqlStr1); |
con.Open(); |
try |
{ |
SqlCommand com = new SqlCommand(SqlStr2, con); |
com.ExecuteNonQuery(); |
string SqlStr3 = "server=TXQ\\TXQ;uid=sa;pwd=123;database=backUp" ; |
string SqlStr4 = "insert into back (name,path) values('" + date1 + "','" + "C:\\DBBACK\\" + date + ".bak')" ; |
SqlConnection cn = new SqlConnection(SqlStr3); |
cn.Open(); |
SqlCommand cm = new SqlCommand(SqlStr4,cn); |
flag=cm.ExecuteNonQuery(); |
if (flag > 0) |
{ |
MessageBox.Show( "数据库备份成功!" ); |
} |
cn.Close(); |
|
} |
catch (Exception error) |
{ |
MessageBox.Show(error.Message); |
MessageBox.Show( "数据库备份失败!" ); |
} |
finally |
{ |
|
con.Close(); |
} |
} |
private void Form1_Load( object sender, EventArgs e) |
{ |
// TODO: 这行代码将数据加载到表“backUpDataSet.back”中。您可以根据需要移动或移除它。 |
//this.backTableAdapter.Fill(this.backUpDataSet.back); |
} |
private void button2_Click( object sender, EventArgs e) |
{ |
int check = 0; |
int sel = 0; |
for ( int i = 0; i < this .dataGridView2.Rows.Count; i++) |
{ |
if (dataGridView2.Rows[i].Cells[1].Value != null ) |
{ |
if (Convert.ToBoolean( this .dataGridView2.Rows[i].Cells[0].Value)) |
{ |
check++; |
sel = i; |
} |
} |
} |
if (check > 1) |
{ |
MessageBox.Show( "您只能选择一文件还原!" , "提示" ,MessageBoxButtons.OK, MessageBoxIcon.Warning); |
} |
if (check ==0) |
{ |
MessageBox.Show( "请选择还原的文件!" , "提示" , MessageBoxButtons.OK, MessageBoxIcon.Warning); |
} |
else |
{ |
string DateStr = "server=TXQ\\TXQ;uid=sa;pwd=123;database=aa" ; |
string path = this .dataGridView2.Rows[sel].Cells[4].Value.ToString(); |
SqlConnection conn = new SqlConnection(DateStr); |
conn.Open(); |
|
string strSQL = "select spid from master..sysprocesses where dbid=db_id( 'aa') " ; |
SqlDataAdapter Da = new SqlDataAdapter(strSQL, conn); |
DataTable spidTable = new DataTable(); |
Da.Fill(spidTable); |
SqlCommand Cmd = new SqlCommand(); |
Cmd.CommandType = CommandType.Text; |
Cmd.Connection = conn; |
if (spidTable.Rows.Count > 1) |
{ |
for ( int iRow = 0; iRow < spidTable.Rows.Count - 1; iRow++) |
{ |
Cmd.CommandText = "kill " + spidTable.Rows[iRow][0].ToString(); |
Cmd.ExecuteNonQuery(); |
} |
} |
conn.Close(); |
conn.Dispose(); |
|
try |
{ |
string str = "use master restore database aa from Disk='" + path + "' with replace,stats=10" ; |
SqlConnection conn1 = new SqlConnection(DateStr); |
conn1.Open(); |
SqlCommand cmd = new SqlCommand(str, conn1); |
cmd.ExecuteNonQuery(); |
if (MessageBox.Show( "恢复成功" , "提示" , MessageBoxButtons.OK, MessageBoxIcon.Exclamation) == DialogResult.OK) |
{ |
this .Close(); |
} |
} |
catch (Exception ex) |
{ |
MessageBox.Show(ex.Message.ToString()); |
} |
} |
} |
private void button3_Click( object sender, EventArgs e) |
{ |
int check = 0; |
int [] sel = new int [ this .dataGridView2.Rows.Count]; |
int flag; |
|
|
for ( int i = 1; i < this .dataGridView2.Rows.Count; i++) |
{ |
if (dataGridView2.Rows[i].Cells[1].Value != null ) |
{ |
// Object o = this.dataGridView2.Rows[i].Cells[0].Value; |
if (Convert.ToBoolean( this .dataGridView2.Rows[i].Cells[ "sel" ].Value)) |
{ |
check++; |
sel[i] = i; |
} |
} |
} |
|
if (check == 0) |
{ |
MessageBox.Show( "请选择要删除的文件!" , "提示" , MessageBoxButtons.OK, MessageBoxIcon.Warning); |
} |
else |
{ |
|
SqlConnection cn1 = new SqlConnection(); |
SqlCommand cm1 = new SqlCommand(); |
cn1.ConnectionString = "server=TXQ\\TXQ;uid=sa;pwd=123;database=backUp" ; |
cm1.Connection = cn1; |
cm1.CommandType = CommandType.Text; |
cn1.Open(); |
SqlDataAdapter da = new SqlDataAdapter(); |
DataTable dt = new DataTable(); |
try |
{ |
for ( int i = 0; i < this .dataGridView2.Rows.Count; i++) |
{ |
if (Convert.ToBoolean( this .dataGridView2.Rows[0].Cells[ "sel" ].Value)) |
{ |
cm1.CommandText = "delete from back where id=0" ; |
cm1.ExecuteNonQuery(); |
i++; |
} |
|
flag = sel[i]; |
if (flag != 0) |
{ |
int id = Convert.ToInt32( this .dataGridView2.Rows[flag].Cells[1].Value); |
cm1.CommandText = "delete from back where id=" + id; |
cm1.ExecuteNonQuery(); |
} |
|
|
} |
} |
catch (Exception ex) |
{ |
MessageBox.Show(ex.Message.ToString()); |
} |
finally |
{ |
cn1.Close(); |
BindingSource bing = new BindingSource(); |
cm1.CommandText = "select id as '编号',name as '名称',time as '时间',path as '路径' from back order by id desc" ; |
da.SelectCommand = cm1; |
da.Fill(dt); |
bing.DataSource= dt; |
this .dataGridView2.DataSource = bing; |
|
} |
} |
} |
private void tabControl1_TabIndexChanged( object sender, EventArgs e) |
{ |
|
} |
private void tabPage2_Click( object sender, EventArgs e) |
{ |
} |
private void tabControl1_SelectedIndexChanged( object sender, EventArgs e) |
{ |
SqlConnection conn = new SqlConnection(); |
SqlCommand cm = new SqlCommand(); |
SqlDataAdapter da = new SqlDataAdapter(); |
DataTable dt = new DataTable(); |
conn.ConnectionString = "server=TXQ\\TXQ;uid=sa;pwd=123;database=backUp" ; |
cm.Connection = conn; |
cm.CommandText = "select * from back order by id desc" ; |
da.SelectCommand = cm; |
da.Fill(dt); |
|
this .dataGridView2.DataSource = dt; |
|
} |
private void dataGridView2_CellContentClick( object sender, DataGridViewCellEventArgs e) |
{ |
} |