public List <String> Select_MySQL_Databases(ConexionBE objConexionBE) { MySqlCommand command = new MySqlCommand(); List <String> lstTables = new List <String>(); MySqlDataReader dr = null; try { MySqlConnection SqlCon = new MySqlConnection(ConnectionString.GetMySQLServer(objConexionBE)); SqlCon.Open(); command.Connection = SqlCon; command.CommandType = CommandType.Text; command.CommandText = "SELECT SCHEMA_NAME AS 'Database' FROM INFORMATION_SCHEMA.SCHEMATA"; dr = command.ExecuteReader(); while (dr.Read()) { lstTables.Add(dr.GetString(0)); } return(lstTables); } catch (Exception) { throw; } finally { command.Dispose(); dr.Close(); dr.Dispose(); } }
public List <String> Select_SQL_Databases(ConexionBE objConexionBE) { SqlCommand command = new SqlCommand(); List <String> lstTables = new List <String>(); SqlDataReader dr = null; try { SqlConnection SqlCon = new SqlConnection(ConnectionString.GetSQLServer(objConexionBE)); SqlCon.Open(); command.Connection = SqlCon; command.CommandType = CommandType.StoredProcedure; command.CommandText = "sp_databases"; dr = command.ExecuteReader(); while (dr.Read()) { lstTables.Add(dr.GetString(0)); } return(lstTables); } catch (Exception) { throw; } finally { command.Dispose(); dr.Close(); dr.Dispose(); } }
public static String GetMySQLServer(ConexionBE objConexionBE) { //return "Server=dellcai;Database=taproyectos;Uid=root;Pwd=root;" String cadena = "server=" + objConexionBE.Server + ";" + (!String.IsNullOrEmpty(objConexionBE.DataBase) ? "Database=" + objConexionBE.DataBase + ";" : "") + (!String.IsNullOrEmpty(objConexionBE.User) ? "uid=" + objConexionBE.User + ";pwd=" + objConexionBE.Password + ";" : ""); return(@cadena); }
public static String GetSQLServer(ConexionBE objConexionBE) { //return "Server=SergioTA;Database=taproyecto;Uid=root;Pwd=root;" String cadena = "server=" + objConexionBE.Server + ";" + (!String.IsNullOrEmpty(objConexionBE.DataBase) ? "Database=" + objConexionBE.DataBase + ";" : "") + (!String.IsNullOrEmpty(objConexionBE.User) ? "uid=" + objConexionBE.User + ";pwd=" + objConexionBE.Password + ";" : "Integrated Security=true;"); return(@cadena); }
public List <ColumnaBE> Select_SQL_Columna(ConexionBE objConexionBE, TablaBE objTablaBE) { List <ColumnaBE> lstColumnaBE = new List <ColumnaBE>(); SqlCommand command = new SqlCommand(); ColumnaBE objColumnaBE = new ColumnaBE(); SqlDataReader dr = null; try { SqlConnection SqlCon = new SqlConnection(ConnectionString.GetSQLServer(objConexionBE)); SqlCon.Open(); command.Connection = SqlCon; command.CommandType = CommandType.Text; command.CommandText = "SELECT distinct c.COLUMN_NAME, " + "c.IS_NULLABLE, " + "c.DATA_TYPE, " + "case when (select COUNT(k.COLUMN_NAME) from INFORMATION_SCHEMA.KEY_COLUMN_USAGE k left join INFORMATION_SCHEMA.TABLE_CONSTRAINTS tc on k.CONSTRAINT_NAME = tc.CONSTRAINT_NAME AND k.TABLE_NAME = tc.TABLE_NAME where tc.CONSTRAINT_TYPE = 'PRIMARY KEY' and k.TABLE_NAME = c.TABLE_NAME and k.COLUMN_NAME = c.COLUMN_NAME) > 0 then 'YES' else 'NO' end 'IS_PK', " + "case when columnproperty(object_id(c.table_name), c.column_name,'IsIdentity') = 1 then 'YES' else 'NO' end 'IS_IDENTITY', " + "c.CHARACTER_MAXIMUM_LENGTH, " + "c.NUMERIC_PRECISION, " + "c.NUMERIC_SCALE " + "FROM INFORMATION_SCHEMA.COLUMNS c " + "where c.TABLE_NAME = '" + objTablaBE.Nombre + "' and c.TABLE_SCHEMA = '" + objTablaBE.Esquema + "'"; dr = command.ExecuteReader(); while (dr.Read()) { objColumnaBE = new ColumnaBE(); objColumnaBE.Nombre = dr["COLUMN_NAME"].ToString(); objColumnaBE.Acepta_Nulos = dr["IS_NULLABLE"].ToString().Equals("NO") ? false : true; objColumnaBE.Tipo_Dato = dr["DATA_TYPE"].ToString(); objColumnaBE.Es_PK = dr["IS_PK"].ToString().Equals("NO") ? false : true; objColumnaBE.Es_Identity = dr["IS_IDENTITY"].ToString().Equals("NO") ? false : true; objColumnaBE.Tamano_Maximo = dr["CHARACTER_MAXIMUM_LENGTH"] != DBNull.Value ? Convert.ToInt32(dr["CHARACTER_MAXIMUM_LENGTH"]) : -1; objColumnaBE.Precision_Numerica = dr["NUMERIC_PRECISION"] != DBNull.Value ? Convert.ToInt32(dr["NUMERIC_PRECISION"]) : -1; objColumnaBE.Precision_Numerica_Base = dr["NUMERIC_SCALE"] != DBNull.Value ? Convert.ToInt32(dr["NUMERIC_SCALE"]) : -1; lstColumnaBE.Add(objColumnaBE); } return(lstColumnaBE); } catch (Exception) { throw; } finally { command.Dispose(); dr.Close(); dr.Dispose(); } }
public List <ColumnaBE> Select_MySQL_Columna(ConexionBE objConexionBE, TablaBE objTablaBE) { try { return(objSystemDALC.Select_MySQL_Columna(objConexionBE, objTablaBE)); } catch (Exception) { throw; } }
public List <TablaBE> Select_MySQL_Table(ConexionBE objConexionBE) { try { return(objSystemDALC.Select_MySQL_Table(objConexionBE)); } catch (Exception) { throw; } }
public List <String> Select_MySQL_Databases(ConexionBE objConexionBE) { try { return(objSystemDALC.Select_MySQL_Databases(objConexionBE)); } catch (Exception) { throw; } }
private ConexionBE ObtenerConexion() { frmAccesoBD objfrmAccesoBD = frmAccesoBD.GetInstance(); ConexionBE objConexionBE = new ConexionBE(); objConexionBE.Server = objfrmAccesoBD._Server; objConexionBE.DataBase = objfrmAccesoBD._BD; objConexionBE.User = objfrmAccesoBD._Usuario; objConexionBE.Password = objfrmAccesoBD._Contrasena; objConexionBE.DataSource = objfrmAccesoBD._DataSource; return(objConexionBE); }
private void btnTest_Click(object sender, EventArgs e) { List <String> lstBD = new List <String>(); SystemBC objSystemBC = new SystemBC(); ConexionBE objConexionBE = new ConexionBE(); objConexionBE.Server = cmbServer.Text; objConexionBE.User = txtUsuario.Text; objConexionBE.Password = txtContrasena.Text; try { if (ValidarTest()) { switch (Convert.ToInt32(cmbDataSource.SelectedValue)) { case (int)DataSource.SQLServer: lstBD = objSystemBC.Select_SQL_Databases(objConexionBE); break; case (int)DataSource.MySQL: lstBD = objSystemBC.Select_MySQL_Databases(objConexionBE); break; } cmbBD.DataSource = lstBD; //cmbDataSource.ValueMember = "Key"; //cmbDataSource.DisplayMember = "Value"; HabilitarBD(true); MessageBox.Show("Conexión exitosa", "Probar Conexión", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show("Por favor, complete todo los campos solicitados.", "Probar Conexión", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception) { MessageBox.Show("Lo sentimos, ha ocurrido un error al conectarse con la base de datos. Revise los parámetros de conexión.", "Probar Conexión", MessageBoxButtons.OK, MessageBoxIcon.Error); //throw; } }
public List <TablaBE> Select_SQL_Table(ConexionBE objConexionBE) { SqlCommand command = new SqlCommand(); List <TablaBE> lstTablaBE = new List <TablaBE>(); TablaBE objTablaBE = new TablaBE(); SqlDataReader dr = null; try { SqlConnection SqlCon = new SqlConnection(ConnectionString.GetSQLServer(objConexionBE)); SqlCon.Open(); command.Connection = SqlCon; command.CommandType = CommandType.Text; command.CommandText = "Select distinct TABLE_NAME, TABLE_SCHEMA From INFORMATION_SCHEMA.Tables where TABLE_TYPE = 'BASE TABLE'"; dr = command.ExecuteReader(); while (dr.Read()) { objTablaBE = new TablaBE(); objTablaBE.Nombre = dr["TABLE_NAME"].ToString(); objTablaBE.Esquema = dr["TABLE_SCHEMA"].ToString(); objTablaBE.Nombre_Sin_Espacios = dr["TABLE_NAME"].ToString().Replace(" ", "_"); lstTablaBE.Add(objTablaBE); } return(lstTablaBE); } catch (Exception) { throw; } finally { command.Dispose(); dr.Close(); dr.Dispose(); } }
private void btnGenerar_Click(object sender, EventArgs e) { if (!string.IsNullOrEmpty(txtPreNamespace.Text.Trim()) && !string.IsNullOrEmpty(txtCSTag.Text.Trim())) { DialogResult result = fbdFileOutpot.ShowDialog(); if (result == System.Windows.Forms.DialogResult.OK) { String ruta = fbdFileOutpot.SelectedPath; SystemBC objSystemBC = new SystemBC(); ConexionBE objConexionBE = ObtenerConexion(); ToolGenBC objToolBC = new ToolGenBC(); //frmAccesoBD objfrmAccesoBD = frmAccesoBD.GetInstance(); String dir = ruta; String dir_bd = dir + "/" + objConexionBE.DataBase + "_CRUD_" + DateTime.Now.Day + DateTime.Now.Month + DateTime.Now.Year + DateTime.Now.Hour + DateTime.Now.Minute + DateTime.Now.Second; Directory.CreateDirectory(dir_bd); String dir_dalc = dir_bd + "/DALC"; String dir_bc = dir_bd + "/BC"; String dir_be = dir_bd + "/BE"; String dir_sp = dir_bd + "/SP"; String dir_helper = dir_bd + "/HELPER"; Boolean sp_header = false; string nsDALC, nsBC, nsBE, nsHelper = ""; Tools.GetPostName(out nsDALC, out nsBC, out nsBE, out nsHelper); nsDALC = txtPreNamespace.Text + "." + nsDALC; nsBC = txtPreNamespace.Text + "." + nsBC; nsBE = txtPreNamespace.Text + "." + nsBE; nsHelper = txtPreNamespace.Text + "." + nsHelper; string usuarioCreacion, usuarioModificacion, fechaCreacion, fechaModificacion, habilitado; Tools.GetCamposAuditoria(out usuarioCreacion, out usuarioModificacion, out fechaCreacion, out fechaModificacion, out habilitado); foreach (DataGridViewRow r in dgvTablas.Rows) { if ((bool)r.Cells["DALC"].Value == true || (bool)r.Cells["BC"].Value == true || (bool)r.Cells["BE"].Value == true || (bool)r.Cells["SP"].Value == true) { TablaBE objTablaBE = new TablaBE(); objTablaBE.Nombre = r.Cells["Nombre"].Value.ToString(); objTablaBE.Esquema = r.Cells["Esquema"].Value.ToString(); objTablaBE.Nombre_Sin_Espacios = r.Cells["Nombre"].Value.ToString().Replace(" ", "_"); List <ColumnaBE> lstColumnaBE = null; switch (Convert.ToInt32(objConexionBE.DataSource)) { case (int)DataSource.SQLServer: lstColumnaBE = objSystemBC.Select_SQL_Columna(objConexionBE, objTablaBE); break; case (int)DataSource.MySQL: lstColumnaBE = objSystemBC.Select_MySQL_Columna(objConexionBE, objTablaBE); break; } if ((bool)r.Cells["DALC"].Value == true) { CrearCarpeta(dir_dalc); String archivo_dalc = dir_dalc + "/" + ToolBC.StandarizarNombreClase(objTablaBE.Nombre) + "DALC.cs"; File.Create(archivo_dalc).Dispose(); DALCGenBC objDALCGen = new DALCGenBC(); objDALCGen._Ruta = archivo_dalc; objDALCGen._DataSource = objConexionBE.DataSource; objDALCGen._Tool = chkGenerarTool.Checked; objDALCGen._Tag = txtCSTag.Text; objDALCGen._lstColumnaBE = lstColumnaBE; objDALCGen._objTablaBE = objTablaBE; objDALCGen._CampoUsuarioCreacion = usuarioCreacion; objDALCGen._CampoUsuarioModificacion = usuarioModificacion; objDALCGen._CampoFechaCreacion = fechaCreacion; objDALCGen._CampoFechaModificacion = fechaModificacion; objDALCGen._CampoHabilitado = habilitado; objDALCGen.GenerarHeader(nsDALC, nsBE, nsHelper); if (chkInsert.Checked) { objDALCGen.GenerarInsert(); } if (chkUpdate.Checked) { objDALCGen.GenerarUpdate(); } if (chkChangeState.Checked) { objDALCGen.GenerarChangeState(); } if (chkSelect.Checked) { objDALCGen.GenerarSelect(); } if (chkGet.Checked) { objDALCGen.GenerarGet(); } if (chkDelete.Checked) { objDALCGen.GenerarDelete(); } objDALCGen.GenerarFooter(); } if ((bool)r.Cells["BC"].Value == true) { CrearCarpeta(dir_bc); String archivo_bc = dir_bc + "/" + ToolBC.StandarizarNombreClase(objTablaBE.Nombre) + "BC.cs"; File.Create(archivo_bc).Dispose(); BCGenBC objBCGenBC = new BCGenBC(); objBCGenBC._Ruta = archivo_bc; objBCGenBC._lstColumnaBE = lstColumnaBE; objBCGenBC._objTablaBE = objTablaBE; objBCGenBC._DataSource = objConexionBE.DataSource; objBCGenBC.GenerarHeader(nsBC, nsDALC, nsBE); if (chkInsert.Checked) { objBCGenBC.GenerarInsert(); } if (chkUpdate.Checked) { objBCGenBC.GenerarUpdate(); } if (chkChangeState.Checked) { objBCGenBC.GenerarChangeState(); } if (chkSelect.Checked) { objBCGenBC.GenerarSelect(); } if (chkGet.Checked) { objBCGenBC.GenerarGet(); } if (chkDelete.Checked) { objBCGenBC.GenerarDelete(); } objBCGenBC.GenerarFooter(); } if ((bool)r.Cells["BE"].Value == true) { CrearCarpeta(dir_be); String archivo_be = dir_be + "/" + ToolBC.StandarizarNombreClase(objTablaBE.Nombre) + "BE.cs"; File.Create(archivo_be).Dispose(); BEGenBC objBEGenBC = new BEGenBC(); objBEGenBC._Ruta = archivo_be; objBEGenBC._lstColumnaBE = lstColumnaBE; objBEGenBC._objTablaBE = objTablaBE; objBEGenBC._DataSource = objConexionBE.DataSource; objBEGenBC.GenerarHeader(nsBE); objBEGenBC.GenerarClase(); objBEGenBC.GenerarFooter(); } if ((bool)r.Cells["SP"].Value == true) { CrearCarpeta(dir_sp); String archivo_sp = dir_sp + "/script.sql"; if (!File.Exists(archivo_sp)) { File.Create(archivo_sp).Dispose(); } SPGenBC objSPGenBC = new SPGenBC(); objSPGenBC._DataSource = objConexionBE.DataSource; objSPGenBC._lstColumnaBE = lstColumnaBE; objSPGenBC._objTablaBE = objTablaBE; objSPGenBC._Ruta = archivo_sp; objSPGenBC._DataBase = objConexionBE.DataBase; objSPGenBC._CampoUsuarioCreacion = usuarioCreacion; objSPGenBC._CampoUsuarioModificacion = usuarioModificacion; objSPGenBC._CampoFechaCreacion = fechaCreacion; objSPGenBC._CampoFechaModificacion = fechaModificacion; objSPGenBC._CampoHabilitado = habilitado; switch (Convert.ToInt32(objConexionBE.DataSource)) { case (int)DataSource.SQLServer: if (!sp_header) { objSPGenBC.SQLGenerarHeader(); sp_header = true; } if (chkInsert.Checked) { objSPGenBC.SQLGenerarInsert(); } if (chkUpdate.Checked) { objSPGenBC.SQLGenerarUpdate(); } if (chkChangeState.Checked) { objSPGenBC.SQLGenerarChangeState(); } if (chkSelect.Checked) { objSPGenBC.SQLGenerarSelect(); } if (chkGet.Checked) { objSPGenBC.SQLGenerarGet(); } if (chkDelete.Checked) { objSPGenBC.SQLGenerarDelete(); } break; case (int)DataSource.MySQL: if (!sp_header) { objSPGenBC.MySQLGenerarHeader(); sp_header = true; } if (chkInsert.Checked) { objSPGenBC.MySQLGenerarInsert(); } if (chkUpdate.Checked) { objSPGenBC.MySQLGenerarUpdate(); } if (chkChangeState.Checked) { objSPGenBC.MySQLGenerarChangeState(); } if (chkSelect.Checked) { objSPGenBC.MySQLGenerarSelect(); } if (chkGet.Checked) { objSPGenBC.MySQLGenerarGet(); } if (chkDelete.Checked) { objSPGenBC.MySQLGenerarDelete(); } break; } } } } if (chkGenerarTool.Checked) { CrearCarpeta(dir_dalc); String archivo_tool = dir_dalc + "/Tool.cs"; File.Create(archivo_tool).Dispose(); objToolBC._Ruta = archivo_tool; objToolBC.CrearToolDALC(nsDALC, txtCSTag.Text); } CrearCarpeta(dir_helper); String helper_tools = dir_helper + "/HelperTools.cs"; File.Create(helper_tools).Dispose(); objToolBC._Ruta = helper_tools; objToolBC.CrearToolBC(nsHelper); if (chkLogErrores.Checked) { String log_file = dir_helper + "/LogFile.cs"; File.Create(log_file).Dispose(); objToolBC._Ruta = log_file; objToolBC.CrearLogBC(nsHelper); } MessageBox.Show("Los archivos se generaron satisfactoriamente.", "Generar CRUD", MessageBoxButtons.OK, MessageBoxIcon.Information); } } else { MessageBox.Show("Por favor, complete todos los campos antes de continuar.", "Generar CRUD", MessageBoxButtons.OK, MessageBoxIcon.Error); } }