اقا خودم سی شارپش کردم گفتم بزارم اینجا برا بقیه



//Data Source: Server Name e SQL ya . ya age noskhe express bashe .\SQLEXPRESS
//connection string sahih bad az in kar: @"Data Source=.;Initial Catalog=Data_Base_Name.mdf;Integrated Security=True;"


public Boolean check_db()
{
string connString = "Data Source=.;Initial Catalog=master;Integrated Security=True;";
string cmdText = "select * from master.dbo.sysdatabases where name='Data_Base_Name.mdf'";
Boolean result = false;
SqlConnection con = new SqlConnection();
con.ConnectionString = connString;
con.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = cmdText;


SqlDataReader reader = cmd.ExecuteReader();
result = reader.HasRows;
con.Close();


return result;
}


public void atach_db()//attach
{
string connString = @"Data Source=.;Integrated Security=True;Initial Catalog=master";
string cmdText = "EXEC sp_attach_db @dbname='" + "Data_Base_Name.mdf" + "', @filename1='" + Application.StartupPath + @"\DB\Data_Base_Name.mdf" + "' , @filename2='" + Application.StartupPath + @"\DB\Data_Base_Name_log.ldf" + "'";


SqlConnection con = new SqlConnection();
con.ConnectionString = connString;


SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = cmdText;


con.Open();
cmd.ExecuteNonQuery();
con.Close();
}




public void detach_db() //detach
{
string connString = @"Data Source=.;Integrated Security=True;Initial Catalog=master";
string cmdText = "sp_detach_db '" + "Data_Base_Name.mdf" + "', 'true'";


SqlConnection con = new SqlConnection();
con.ConnectionString = connString;


SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = cmdText;


con.Open();
cmd.ExecuteNonQuery();
con.Close();
}