Altas, Bajas y Consultas en csharp

Ejemplos de realizar el ABC (Altas, Bajas y Consultas) o también conocido como CRUD (Create, Read, Update, Delete).


Los ejemplos seran sencillos, primero considerando a los que apenas se inician en Csharp, realizaremos un ejemplo completo con la base de datos de Acces, para tenermo nociones.

PLATAFORMA
          -- Access 2007
          -- Visual Studio 2008



BASE DATOS

La base de datos  bdDatos.mbd para la office 2003 y bdDatos.accbd para officce 2007/2010. 
Craremos una tabla llamada "tbClientes" con los siguientes datos:

Tablas:
               Id              [Autonumérico]
               Nombre   [Texto]
               Email       [Texto]



CONEXIÓN BASE DATOS

Access 2003
OleDbConnection MyConnection = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0; User ID=;Password=; Data Source= bdDatos.mdb.mdb;Persist Security Info=False");

Access 2007 /  2010
OleDbConnection MyConnection = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0; User ID=;Password=;Data Source= bdDatos.mdb.accdb;Persist Security Info=False");


CREAR BASE DATOS
Crear la base de datos en Acces, pueden insertar unos 10 registros si gustan.


CREAR FORMULARIO
Realizar el siguiente formulario en Visual Studio (el que esten usando). Debe quedarles algo asi.



CAJAS DE TEXTO  (nombres)
      txtId
      txtNombre
      txtEmail


BOTONES            (nombres)
     cmdInsertar
     cmdEliminar
     cmdActualizar
     cmdBuscar

ETIQUETAS   (nombre)
     lblAviso      (es la que tiene como texto "CRUD Clientes"), la usaremos para desplegar mensajes.



ESTABLECIENDO EL TIPO DE MOTOR DE BD

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


ACTUALIZAR

 //Método para actualizar registros a la base de datos
        public static bool ACTUALIZAR_REGISTROS(string _oldnombre, string _oldemail, string _nvoNombre, string _nvoEmail)
        {
            bool edo;
            try
            {
                OleDbConnection conexion = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0; User ID=;Password=; Data Source= bdDatos.mdb;Persist Security Info=False");
                OleDbCommand CommandQuery = new OleDbCommand("UPDATE tbClientes  SET Nombre='" + _nvoNombre + "', Email='" + _nvoEmail + "' WHERE Nombre='" + _oldnombre + "'", conexion);
                OleDbDataAdapter actualizar = new OleDbDataAdapter();
                conexion.Open();
                actualizar.UpdateCommand = CommandQuery;
                actualizar.UpdateCommand.ExecuteNonQuery();
                conexion.Close();
                edo = true;
            }
            catch { edo = false; }
            return edo;
        }
INSERTAR

//Método para insertar registros a la base de datos
        public static bool INSERTAR_REGISTROS(string _nombre, string _email)
        {
            bool edo;
            try
            {
                OleDbConnection conexion = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0; User ID=;Password=; Data Source= bdDatos.mdb;Persist Security Info=False");
                OleDbCommand CommandQuery = new OleDbCommand("INSERT INTO tbClientes(Nombre, Email) VALUES('" + _nombre + "','" + _email + "')", conexion);
                OleDbDataAdapter insertar = new OleDbDataAdapter();
                conexion.Open();
                insertar.InsertCommand = CommandQuery;
                insertar.InsertCommand.ExecuteNonQuery();
                conexion.Close();
                edo = true;
            }
            catch { edo = false; }
            return edo;
        }

ELIMINAR

 //Método para eliminar registros a la base de datos
        public static bool ELIMINAR_REGISTRO(string _nombre)
        {
            bool edo;
            try
            {
                OleDbConnection conexion = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0; User ID=;Password=; Data Source= bdDatos.mdb;Persist Security Info=False");
                OleDbCommand CommandQuery = new OleDbCommand("DELETE FROM tbClientes  WHERE Nombre='" + _nombre + "'", conexion);
                OleDbDataAdapter eliminar = new OleDbDataAdapter();
                conexion.Open();
                eliminar.DeleteCommand = CommandQuery;
                eliminar.DeleteCommand.ExecuteNonQuery();
                conexion.Close();
                edo = true;
            }
            catch { edo = false; }
            return edo;
        }
LISTAR

  //Método para seleccionar registros a la base de datos
        public static string[] ListarRegistros()
        {
            string[] listaClientes = null;
            string Nombre = string.Empty;
            string Email = string.Empty;
      
            try
            {
                OleDbConnection conexion = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0; User ID=;Password=; Data Source= bdDatos.mdb;Persist Security Info=False");
                OleDbDataAdapter mdapter = new OleDbDataAdapter("Select * from tbClientes", conexion);
                DataSet mdataset = new DataSet();

                conexion.Open();
                mdapter.Fill(mdataset);
                if (mdataset.Tables[0].Rows.Count > 0)
                {
                    listaClientes = new string[mdataset.Tables[0].Rows.Count];

                    for (int i = 0; i < mdataset.Tables[0].Rows.Count; i++)
                    {
                        DataRow campo = mdataset.Tables[0].Rows[i];

                        Nombre = campo["nombre"].ToString();
                        Email = campo["email"].ToString();
                        listaClientes[i] = Nombre + " " + Email;
                    }
                }
                conexion.Close();
            }
            catch { listaClientes = null; }
            return listaClientes;
        }






NOTA:   ACTUALIZANDO POST......... gracias

Post Relacionados: