public string GenerarInsertInto(ObjetoInsert ins) { string devolver=null, into = null, values = null; for(int i= 0; i<ins.ValoresInsert.Count;i++) { into += ins.ValoresInsert[i].Into; values += ins.ValoresInsert[i].ValueComillas? "'"+ins.ValoresInsert[i].Value+"'":ins.ValoresInsert[i].Value; if (i != ins.ValoresInsert.Count - 1) { into += ","; values += ","; } } devolver = string.Format("INSERT INTO {0} ({1}) VALUES ({2});",ins.Tabla,into,values); return devolver; }
public override void Insertar(ObjetoInsert insert) { string consulta = GenerarInsertInto(insert); _command = new MySqlCommand(consulta, _connection); try { _connection.Open(); _command.ExecuteNonQuery(); } catch (MySqlException exc) { if (exc.Number == 2627) throw new Exception("Ya existe un elemento con este Id. Por favor cámbielo y vuelva a intentarlo"); if (exc.Number == 1062) { //string m = exc.Message; //string a = m.Substring(m.IndexOf('\'')+1); //string valor = a.Remove(a.IndexOf('\'')); //string c = a.Substring(a.IndexOf('\'')+1); //string d = c.Substring(c.IndexOf('\'')+1); //string campo = d.Remove(d.IndexOf('\'')); string valor, campo; ObtenerValorCampoDuplicado(exc.Message, out valor, out campo); throw new BaseDatosEntradaDuplicadaException(valor, campo); //exc.Message.Substring(esc.me } else { throw new Exception("Mensaje: " + exc.Message + "\n\n" + "Consulta: " + consulta); } } finally { _connection.Close(); } }
public abstract void Insertar(ObjetoInsert Insert);