public void MySQLGenerarChangeState() { int n_iteraciones = 0; int n_pk = (from c in _lstColumnaBE where c.Es_PK select c).Count(); int n_no_pk = (from c in _lstColumnaBE where !c.Es_PK select c).Count(); using (StreamWriter sp = File.AppendText(_Ruta)) { string whereHabilitado = ""; MySQLGenerarHeaderSP(sp); sp.WriteLine("CREATE PROCEDURE `" + ToolBC.StandarizarNombreClase(_objTablaBE.Nombre) + "_Change_State` ("); foreach (ColumnaBE c in _lstColumnaBE) { if (c.Es_PK) { sp.WriteLine(" in v_" + ToolBC.StandarizarNombreParametro(c.Nombre) + " " + ToolBC.MySQLParameter(c) + (n_iteraciones != n_pk - 1 ? "," : "")); whereHabilitado += "`" + c.Nombre + "` = v_" + ToolBC.StandarizarNombreParametro(c.Nombre) + (n_iteraciones != n_pk - 1 ? " and " : ""); n_iteraciones++; } } sp.WriteLine(")"); sp.WriteLine("BEGIN"); sp.WriteLine(" set @habilitado = (select `" + _CampoHabilitado + "` from `" + _objTablaBE.Nombre + "` where " + whereHabilitado + ");"); sp.WriteLine(""); sp.WriteLine(" if(@habilitado = true) then"); sp.WriteLine(" set @habilitado = false;"); sp.WriteLine(" else"); sp.WriteLine(" set @habilitado = true;"); sp.WriteLine(" end if;"); sp.WriteLine(""); sp.WriteLine(" update `" + _objTablaBE.Nombre + "`"); sp.WriteLine(" set `" + _CampoHabilitado + "` = @habilitado"); sp.WriteLine(" where"); n_iteraciones = 0; foreach (ColumnaBE c in _lstColumnaBE) { if (c.Es_PK) { sp.WriteLine(" `" + c.Nombre + "` = v_" + ToolBC.StandarizarNombreParametro(c.Nombre) + (n_iteraciones != n_pk - 1 ? " and " : ";")); n_iteraciones++; } } sp.WriteLine("END $$"); sp.WriteLine(""); } }
public void MySQLGenerarDelete() { int n_iteraciones = 0; int n_pk = (from c in _lstColumnaBE where c.Es_PK select c).Count(); int n_no_pk = (from c in _lstColumnaBE where !c.Es_PK select c).Count(); using (StreamWriter sp = File.AppendText(_Ruta)) { MySQLGenerarHeaderSP(sp); sp.WriteLine("CREATE PROCEDURE `" + ToolBC.StandarizarNombreClase(_objTablaBE.Nombre) + "_Delete` ("); foreach (ColumnaBE c in _lstColumnaBE) { if (c.Es_PK) { sp.WriteLine(" in v_" + ToolBC.StandarizarNombreParametro(c.Nombre) + " " + ToolBC.MySQLParameter(c) + (n_iteraciones != n_pk - 1 ? "," : "")); n_iteraciones++; } } sp.WriteLine(")"); sp.WriteLine("BEGIN"); sp.WriteLine(" delete from `" + _objTablaBE.Nombre + "`"); sp.WriteLine(" where"); n_iteraciones = 0; foreach (ColumnaBE c in _lstColumnaBE) { if (c.Es_PK) { sp.WriteLine(" `" + c.Nombre + "` = v_" + ToolBC.StandarizarNombreParametro(c.Nombre) + (n_iteraciones != n_pk - 1 ? " and " : ";")); n_iteraciones++; } } sp.WriteLine("END $$"); sp.WriteLine(""); } }
public void MySQLGenerarGet() { String inicial_tabla = _objTablaBE.Nombre.First().ToString().ToLower(); bool primero = true; int n_iteraciones = 0; int n_pk = (from c in _lstColumnaBE where c.Es_PK select c).Count(); int n_no_pk = (from c in _lstColumnaBE where !c.Es_PK select c).Count(); using (StreamWriter sp = File.AppendText(_Ruta)) { MySQLGenerarHeaderSP(sp); sp.WriteLine("CREATE PROCEDURE `" + ToolBC.StandarizarNombreClase(_objTablaBE.Nombre) + "_Get`("); foreach (ColumnaBE c in _lstColumnaBE) { if (c.Es_PK) { sp.WriteLine(" in v_" + ToolBC.StandarizarNombreParametro(c.Nombre) + " " + ToolBC.MySQLParameter(c) + (n_iteraciones != n_pk - 1 ? "," : "")); n_iteraciones++; } } sp.WriteLine(")"); sp.WriteLine("BEGIN"); sp.WriteLine(" select "); foreach (ColumnaBE c in _lstColumnaBE) { sp.WriteLine(" " + (primero ? "" : ",") + inicial_tabla + ".`" + c.Nombre + "`"); primero = false; } sp.WriteLine(" from `" + _objTablaBE.Nombre + "` " + inicial_tabla); sp.WriteLine(" where"); n_iteraciones = 0; foreach (ColumnaBE c in _lstColumnaBE) { if (c.Es_PK) { sp.WriteLine(" " + inicial_tabla + ".`" + c.Nombre + "` = v_" + ToolBC.StandarizarNombreParametro(c.Nombre) + (n_iteraciones != n_pk - 1 ? " and " : ";")); n_iteraciones++; } } sp.WriteLine("END $$"); sp.WriteLine(""); } }
public void MySQLGenerarUpdate() { int n_no_pk = (from c in _lstColumnaBE where !c.Es_PK select c).Count(); int n_pk = (from c in _lstColumnaBE where c.Es_PK select c).Count(); int n_parameter = (from c in _lstColumnaBE where c.Nombre != _CampoFechaCreacion && c.Nombre != _CampoFechaModificacion && c.Nombre != _CampoUsuarioCreacion && c.Nombre != _CampoHabilitado select c).Count(); int n_update = (from c in _lstColumnaBE where !c.Es_PK && c.Nombre != _CampoFechaCreacion && c.Nombre != _CampoUsuarioCreacion && c.Nombre != _CampoHabilitado select c).Count(); if (n_no_pk != 0 && n_pk != 0) { int n_iteraciones = 0; using (StreamWriter sp = File.AppendText(_Ruta)) { MySQLGenerarHeaderSP(sp); sp.WriteLine("CREATE PROCEDURE `" + ToolBC.StandarizarNombreClase(_objTablaBE.Nombre) + "_Update` ("); foreach (ColumnaBE c in _lstColumnaBE) { if (c.Nombre != _CampoFechaCreacion && c.Nombre != _CampoFechaModificacion && c.Nombre != _CampoUsuarioCreacion && c.Nombre != _CampoHabilitado) { sp.WriteLine(" v_" + ToolBC.StandarizarNombreParametro(c.Nombre) + " " + ToolBC.MySQLParameter(c) + (n_iteraciones != n_parameter - 1 ? "," : "")); n_iteraciones++; } } sp.WriteLine(")"); sp.WriteLine("BEGIN"); sp.WriteLine(" update `" + _objTablaBE.Nombre + "`"); sp.WriteLine(" set"); n_iteraciones = 0; foreach (ColumnaBE c in _lstColumnaBE) { if (!c.Es_PK && c.Nombre != _CampoFechaCreacion && c.Nombre != _CampoUsuarioCreacion && c.Nombre != _CampoHabilitado) { if (c.Nombre == _CampoFechaModificacion) { sp.WriteLine(" `" + c.Nombre + "` = UTC_TIMESTAMP()" + (n_iteraciones != n_update - 1 ? "," : "")); } else { sp.WriteLine(" `" + c.Nombre + "` = v_" + ToolBC.StandarizarNombreParametro(c.Nombre) + (n_iteraciones != n_update - 1 ? "," : "")); } n_iteraciones++; } } sp.WriteLine(" where"); n_iteraciones = 0; foreach (ColumnaBE c in _lstColumnaBE) { if (c.Es_PK) { sp.WriteLine(" `" + c.Nombre + "` = v_" + ToolBC.StandarizarNombreParametro(c.Nombre) + (n_iteraciones != n_pk - 1 ? " and " : ";")); n_iteraciones++; } } sp.WriteLine("END $$"); sp.WriteLine(""); } } }