none
duda sobre manejo de la base de datos RRS feed

  • Pregunta

  • buenas tardes quisiera saber cual es la mejor opción para realizar consultas, insertar, borrar etc en una base de datos sql server ,

    si con una función con dataset o con sqlcommand ejemplos:

    funcion con dataset:

     public static DataSet Ejecutar(string cmd)
            {
                SqlConnection conectar = new SqlConnection("Data Source=ERIKZ90\\ERICSERVER;Initial Catalog=PsoftFacturacion;Integrated Security=True");
                conectar.Open();

                DataSet ds = new DataSet();

                SqlDataAdapter dp = new SqlDataAdapter(cmd, conectar);

                dp.Fill(ds);
                conectar.Close();
                return ds;
            }

    llamda ala funcion para realizar una consulta y muestre datos

    string cmd = string.Format("select * from clientes where numero = '{0}'", numero.ToString());
                DataSet ds = Ejecutar(cmd);

     textbox1.Text = ds.Tables[0].Rows[0]["nombre"].ToString();

    la otra forma mas convencional es asi 

    SqlConnection conn = new SqlConnection();
                conn = new SqlConnection(conexion);
                conn.Open();
                string query = "SELECT * FROM empleados WHERE Id = @id";
                SqlCommand cmd = new SqlCommand(query, conn);
                cmd.Parameters.AddWithValue("@id", Convert.ToInt32(txtbusqueda.Text));
                SqlDataReader dr = cmd.ExecuteReader();
                if (dr.Read()) 
                {
                    txtid.Text = dr["id"].ToString();
                    txtnombre1.Text = dr["first_name"].ToString();
                    txtnombre2.Text = dr["middle"].ToString();
                    txtapepat.Text = dr["last"].ToString();
                    txtapemat.Text = dr["second_last"].ToString();
                }
            }

    mi duda es cual es la mejor opcion para realizar manejo de la base de datos yo uso la primera y me funciona muy bien pero no se si sea correcto realizar eso, la segunda opcion se me hace un poco mas tediosa, si alguien pudiera explicarme cual de las 2 opciones es mejor y porque se lo agradeceria gracias. 

    jueves, 22 de junio de 2017 21:19

Respuestas

  • hola

    la mejor opcion es la segunda, trabajar tipado con clases y listas

    [WinForms] Edición Empleados

    y trabja en capas, al menos dos, la capa de datos sera la responsable de devolver los datos de la db con las entidades de dominio de definas

    Sino quieres que sea tedioso deberias evaluar un ORM como ser Entity Framework

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Propuesto como respuesta Pedro Ávila viernes, 23 de junio de 2017 0:05
    • Marcado como respuesta Joyce_ACModerator lunes, 26 de junio de 2017 13:51
    jueves, 22 de junio de 2017 21:47