SQL: Tutorial Conectar una bd datos y mostrar en un datagridview


Pondré este post de como conectar a una bd desde código y mostrar los datos en un datagridview:

Primero que nada creamos el proyecto Windows en Visual Studio.

Colocamos el namespace correspondiente a datos.

using System.Data.SqlClient;

Declaro ciertos objetos de los que me van a servir para poder manipular la informacion:

     private SqlDataAdapter misqlDa;   //Adaptador de Datos
      private SqlConnection miConexion;  //Objeto Conexión
      private DataSet miDt;                    //Conjunto de Datos
      private string miCadenaConexion;   //Cadena de Conexion al Servidor SQL
      private string consulta;                  //Consulta para mostrar en el datagridview
      private BindingSource alumnoBS;    //Recurso de datos

Hago un método para conectarme a la BD:

public void Conectar()
        {
            try
            {
                miCadenaConexion = “Data Source=.\\SQLEXPRESS;Initial Catalog=CIA;Integrated Security=True”;
                miConexion = new SqlConnection(miCadenaConexion);
                miConexion.Open();
            }
            catch (SqlException ex)
            {
                MessageBox.Show(“No se pudo conectar al servidor”);
            }
        }

En el evento Load de mi formulario coloco ese metodo:

private void Form1_Load(object sender, EventArgs e)
        {
            Conectar();

        }

Despues escribo este código dentro de ese mismo metodo Load, en donde escribo mi consulta se la paso al adaptador conjunto a la conexion.

 

            consulta = “SELECT * From Alumno”;
            misqlDa = new SqlDataAdapter(consulta, miConexion);
            miDt = new DataSet();

                      alumnoBS = new BindingSource();

Después ahora llenaremos el conjunto de datos y colocamos el datagridview en nuestro formulario:

             misqlDa.Fill(miDt, “Alumno”);
            alumnoBS.DataSource= miDt;
            alumnoBS.DataMember=”Alumno”;

            dataGridView1.DataSource = alumnoBS;

datagridview01

Ejecutamos la aplicación:

datagridview02

Código completo ver aquí

12 thoughts on “SQL: Tutorial Conectar una bd datos y mostrar en un datagridview

  1. Utilicé tu código para aplicarlo a mi proyecto, y quedó de la siguiente manera:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using System.Data.SqlClient;

    namespace Conexión03
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }

    private SqlDataAdapter misqlDa;
    private SqlConnection miConexion;
    private DataSet miDt;
    private string miCadenaConexion;
    private string consulta;
    private BindingSource archiBS;

    private void Form1_Load(object sender, EventArgs e)
    {
    Conectar();
    consulta = “SELECT * From ACUSES”;
    misqlDa = new SqlDataAdapter(consulta, miConexion);
    miDt = new DataSet();

    archiBS = new BindingSource();

    misqlDa.Fill(miDt, “ACUSES”);
    archiBS.DataSource = miDt;
    archiBS.DataMember = “ACUSES”;

    dataGridView1.DataSource = archiBS;
    }

    public void Conectar()
    {
    try
    {
    miCadenaConexion = @”Persist Security Info=False; Data Source=sspf\sqlexpress; User=sa; Password=archivo; Initial Catalog=ARCHIVO”;
    miConexion = new SqlConnection(miCadenaConexion);
    miConexion.Open();
    }
    catch (SqlException ex)
    {
    MessageBox.Show(“No se pudo conectar al servidor”);
    }
    }
    }
    }

    La cuestión es que cuando lo ejecuto me manda el form, pero en el dataGridView no aparecen los datos. No se en donde recida mi error. Espero puedas ayudarme ya que tengo algunos dias intentando pero no consigo mostrar los campos en mi formulario de c#.

    Te dejo mi correo por si en algo pudieras auxiliarme: elric85@gmail.com

  2. Muchas gracias por tu aportacion esta sencillo y excelente , completamente entendible estubo muy bien ya que yo andube buscando mucha informacion la cual no me resolvia mi problema muchas gracias en verdad

  3. Espero les sirva esto lo podes colocar en el textchange de un texbox o en un boton colo lo e aplicado yo

    private void btnmostrar_Click(object sender, EventArgs e)
    {
    String consult = “select * from Customers where CompanyName like ‘” + textBox1.Text + “%'”;
    string cn = “Data source=pc5; Initial Catalog=Northwind; Integrated security= true”;
    SqlConnection con = new SqlConnection(cn);
    SqlDataAdapter da = new SqlDataAdapter(consult, con);
    DataSet ds = new DataSet();
    BindingSource bs = new BindingSource();
    // da.Fill;
    da.Fill(ds, “Customers”);
    bs.DataSource = ds;
    bs.DataMember = “Customers”;
    dgvcustomers.DataSource = bs;
    }

  4. gracias por el aporte es muy bueno, porfa para realizar una conexion con asp.net me podriass dar un ejemplo? graciasss

  5. Que tal quizas este sea un ejemplo de como hacer una conexión con ASP.NET solo debes cambiar el proveedor de acceso a datos, en lugar de MysqlConnection, SqlConnection, SqlCommand, SqlDataReader, etc. si es para SQL Server, si es para Access OledbCommand,…. si es para Oracle, OracleConnection, etc. etc.

  6. Hola mi consulta es sobre como puedo puedo hacer para por ejemplo, tengo un campo fecha, y quiero compararlo con la fecha del sistema, y que se vea en un datagridview.

    Si fechaDB==fechaSISTEMA
    mostrar en datagridview

    algo asi desde ya muchas gracias

  7. Excelente aportacion me sirvio de mucho ahora quisiera saber ver como en lugar de que se cargen todos los datos en el datagridview se cargen solo dos campos en un comboBox espero me puedan ayudar, por ejemplo la tabla se llama clientes y los datos que quiero que se cargen son nombre y cia para la consulta se que quedaria asi: String consulta = “select nombre, cia from clientes”;

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s