none
Ordenar Datos con Order By en C# conectado con SQL RRS feed

  • Pregunta

  • Hola, tengo una duda, tengo un proyecto de C# conectado a SQL, y quiero que al dar click en un button me ordene un puntaje de mayor a menor, ahora bien, tengo este codigo, pero no me funciona, no tengo mucho utilizando C# con SQL, agradeceria su ayuda.

            public DataTable ordenar()
            {
                conexion.Open();
                SqlCommand cmd = new SqlCommand(string.Format("select * from Empleados order by puntaje"), conexion);
                SqlDataAdapter adaptador = new SqlDataAdapter(cmd);
                ds = new DataSet();
                adaptador.Fill(ds, "tabla");
                conexion.Close();
                return ds.Tables["tabla"];
            }

    Lo tengo en una clase junto a una conexion, y lo cargo en el evento click

            private void btnordenar_Click(object sender, EventArgs e)
            {
                sql.ordenar();
            }

    lunes, 27 de noviembre de 2017 23:31

Respuestas

  • En principio, está bien como lo tienes. Si no te funciona, tiene que haber algún problema que no es obvio a la vista de ese código, por ejemplo que en la sentencia esté mal escrito el nombre del campo o de la tabla, o que la cadena de conexión no sea correcta, o que el campo no sea numérico y te lo esté ordenando por orden alfabético... Lógicamente no puede deducirse con los datos que has aportado. Acostúmbrate a no decir nunca "no me funciona". Hay que describir cuál es la forma exacta en la que no funciona, incluyendo mensajes de error completos y exactos si es que los hay, o descripción de los resultados observados si es que no hay error.
    martes, 28 de noviembre de 2017 8:02
    Moderador

Todas las respuestas

  • En principio, está bien como lo tienes. Si no te funciona, tiene que haber algún problema que no es obvio a la vista de ese código, por ejemplo que en la sentencia esté mal escrito el nombre del campo o de la tabla, o que la cadena de conexión no sea correcta, o que el campo no sea numérico y te lo esté ordenando por orden alfabético... Lógicamente no puede deducirse con los datos que has aportado. Acostúmbrate a no decir nunca "no me funciona". Hay que describir cuál es la forma exacta en la que no funciona, incluyendo mensajes de error completos y exactos si es que los hay, o descripción de los resultados observados si es que no hay error.
    martes, 28 de noviembre de 2017 8:02
    Moderador
  • Además de lo que ya te dijo Alberto tienes que explicar como muestras los datos: es un datagridview o un combobox? como estas enlazados los datos del datatable cargado (ds.Tables["tabla"]) con el control que muestra los datos.
    martes, 28 de noviembre de 2017 10:38
  • hola

    pero donde asignas el datatable que retornas como respuesta del ordenar() para visualizar los datos, se supone que asignes a un control como ser

    private void btnordenar_Click(object sender, EventArgs e)
    {
       DataGridView1.DataSource = sql.ordenar();
    } 
     

    se asigna a un control grid que deberias tener en el form, asi visualizas los datos ordenados que retorna la consulta

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 28 de noviembre de 2017 15:07