public static bool TestConnection(ConnectionInfo conInfo, out Exception exception) { bool succ = false; IConnectionFactory fac = null; if (conInfo.Type == ConnectionType.SqlServer) { fac = new SqlServerConnectionFactory(); } else if (conInfo.Type == ConnectionType.MySql) { fac = new MySqlConnectionFactory(); } using (IDbConnection con = fac.CreateConnection(conInfo)) { try { con.Open(); exception = null; succ = true; } catch (Exception ex) { exception = ex; succ = false; } } return succ; }
public static Schema CreateFromConnection(ConnectionInfo conInfo) { Schema schema = new Schema(); schema.CatalogName = conInfo.Catalog; schema.Name = conInfo.Schema; IConnectionFactory fac = null; ISqlConf sqlConf = null; if (conInfo.Type == ConnectionType.SqlServer) { fac = new SqlServerConnectionFactory(); sqlConf = new SQLServerDefaultConf(); schema.Platform = "SQLSERVER"; } else if (conInfo.Type == ConnectionType.MySql) { fac = new MySqlConnectionFactory(); sqlConf = new MySqlDefaultConf(); schema.Platform = "MYSQL"; } using (IDbConnection conn = fac.CreateConnection(conInfo)) { conn.Open(); IDatabaseExplorer dbExplorer = new DatabaseExplorer(conn, sqlConf); schema.Tables = dbExplorer.GetTables(schema).ToList<Table>(); schema.StoredProcedures = dbExplorer.GetStoredProcedures(schema).ToList<StoredProcedure>(); } return schema; }
private void btnSelectDatabase_Click(object sender, EventArgs e) { FrmConnection connectionForm = new FrmConnection(); DialogResult dr = connectionForm.ShowDialog(this); if (dr == DialogResult.OK) { SqlServerConnectionFactory fac = new SqlServerConnectionFactory(); edtCN.Text = fac.CreateConnectionString(connectionForm.ConnectionInfo); edtSchema.Text = connectionForm.ConnectionInfo.Schema; } }
private void cmbDatabase_DropDown(object sender, EventArgs e) { try { cmbDatabase.DataSource = null; SqlServerConnectionFactory fac = new SqlServerConnectionFactory(); using (IDbConnection conn = fac.CreateConnection(getConInfo())) { IDatabaseExplorer exp = new DatabaseExplorer(conn, new SQLServerDefaultConf()); conn.Open(); List<Catalog> catalogs = exp.GetCatalogs().ToList<Catalog>(); cmbDatabase.DataSource = catalogs; cmbDatabase.DisplayMember = "Name"; } } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }