private void btnSQLCleanTableAll_Click(object sender, EventArgs e) { if (!SQLCleanTableAllWorker.IsBusy) { SQLCleanTableAllWorker.RunWorkerAsync(); } }
void SQLCleanTableAllWorker_DoWork(object sender, DoWorkEventArgs e) { SQLCleanTableAlls.Clear(); SqlConnection connection = new SqlConnection(varXml.SQLAddress); try { connection.Open(); SqlCommand command = new SqlCommand("SELECT * FROM INFORMATION_SCHEMA.TABLES", connection); SqlDataReader reader = command.ExecuteReader(); while (reader.Read()) { SQLCleanTableAlls.Add(reader.GetString(2)); } reader.Close(); SQLCleanTableAllWorker.ReportProgress(0); string strcom = ""; for (int i = 0; i < SQLCleanTableAlls.Count; i++) { strcom = string.Format("DROP TABLE {0} ; ", SQLCleanTableAlls[i]); command.CommandText = strcom; command.CommandTimeout = 300; command.ExecuteNonQuery(); SQLCleanTableAllWorker.ReportProgress(i + 1); } } catch { } finally { connection.Close(); } }