Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / C Sharp / Insert, Update, Delete con Access y C#

Insert, Update, Delete con Access y C#

Autor jc mouse miércoles, agosto 27, 2014

En un post anterior vimos la forma de conectarnos a una base de datos Access con C#, pero de nada nos sirve solo conectarnos, debemos interactuar con la base de datos para agregar registros (INSERT), actualizar datos (UPDATE) y eliminar registro (DELETE),y claro esta debemos ser capaces de extraer información y mostrar esta en pantalla.

Para este ejemplo utilizamos una base de datos Access (dbalumno.mdb) con una tabla llamada Alumno que tiene tres campos: ID autonumerico, nombre y apellido de tipo Texto. Añadimos unos cuantos datos manualmente

tabla mdb

A continuación el programa completo en consola con las operaciones INSERT, UPDATE y DELETE, para su mejor comprensión se divide este en diferentes métodos para cada acción que se quiere realizar.

01 using System;
02 using System.Collections.Generic;
03 using System.Linq;
04 using System.Text;
05 using System.Data.OleDb;
06 
07 namespace ConAccessOperations
08 {
09     class Program
10     {
11         static OleDbConnection con;//Representa una conexión abierta a un origen de datos
12         static String ds = "E:/dbalumno.mdb"; //direccion de la base de datos Access
13         static String stringConexion = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + ds;
14 
15         static void Main(string[] args)
16         {
17             conectar();
18             
19             //Se imprimir los registros
20             imprimirRegistros();
21             //se añaden dos nuevos registros
22             insertar("Jorge","Nitales");
23             insertar("Elsa", "Pallo");
24             imprimirRegistros();
25             //Se actualiza el registro con ID=4
26             actualizar(4,"apellido='Gordito'");
27             imprimirRegistros();
28             //Se elimina 
29             eliminar(2);
30             imprimirRegistros();
31 
32             desconectar();
33             Console.WriteLine("Presione cualquier tecla para terminar");
34             Console.ReadKey();
35         }
36 
37         /** Abre una conexion a la base de datos */
38         static void conectar() 
39         {
40             try
41             {
42                 con = new OleDbConnection(@stringConexion);
43                 con.Open();//se abre una conexion
44                 Console.WriteLine("Conectado a la base de datos.");                
45             }
46             catch (System.Exception ex)
47             {
48                 Console.WriteLine("ERROR:" + ex.Message);
49             }
50         }
51 
52         /** Cierra la conexion a la base de datos */
53         static void desconectar() 
54         {
55             con.Close();
56             Console.WriteLine("La conexion ha terminado.");
57         }
58 
59         /** Extrae registros y los muestra en pantalla */
60         static void imprimirRegistros() 
61         {
62             OleDbCommand cmd = new OleDbCommand();
63             cmd.Connection = con;                        
64             cmd.CommandText = @"SELECT Id,nombre,apellido FROM Alumno";
65             //Ejecuta la instruccion SQL y retorna el resultado
66             OleDbDataReader reader = cmd.ExecuteReader();
67             Console.WriteLine("-----------------------------------");
68             //va leyendo los registros y mostrando en pantalla
69             while (reader.Read())
70             {
71                 Console.WriteLine("{0} | {1} | {2}", reader.GetValue(0).ToString(),
72                                                      reader.GetValue(1).ToString(),
73                                                      reader.GetValue(2).ToString());
74             }
75             Console.WriteLine("-----------------------------------");
76             reader.Close();
77         }
78 
79         /** Ejecuta un INSERT */
80         static void insertar(String nombre, String apellido) 
81         {
82             OleDbCommand cmd = new OleDbCommand();//Representa una instruccion SQL
83             cmd.Connection = con;//asigna la conexion a la base de datos
84             Console.Write("Insertando registros...");
85             String query = "INSERT INTO Alumno(nombre,apellido) VALUES('"+nombre+"','"+apellido+"')";            
86             cmd.CommandText = @query;//asigna la instruccion SQL que se ejecutara
87             cmd.ExecuteNonQuery();//ejecuta una instruccion SQL
88             Console.WriteLine("ok");
89         }
90 
91         /** Ejecuta un UPDATE 
92  * Id Llave primaria
93  * Set Ej. "Nombre='nuevo valor'"
94  */
95         static void actualizar(int Id, String Set) 
96         {
97             OleDbCommand cmd = new OleDbCommand();
98             cmd.Connection = con;
99             Console.Write("Actualizando...");
100             String query = "UPDATE Alumno SET "+Set+" WHERE Id="+Id;
101             cmd.CommandText = @query;            
102             cmd.ExecuteNonQuery();
103             Console.WriteLine("ok");
104         }
105 
106         /** Elimina un registro dado su ID */
107         static void eliminar(int Id) 
108         {
109             OleDbCommand cmd = new OleDbCommand();
110             cmd.Connection = con;
111             Console.Write("Eliminando...");
112             String query = "DELETE FROM Alumno WHERE Id="+Id;            
113             cmd.CommandText = @query;
114             cmd.ExecuteNonQuery();
115             Console.WriteLine("ok");
116         }
117 
118     }
119 }

Ejecutamos

IUD

enjoy 🙂

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

SOAP .:. Cliente android

SOAP .:. Cliente android

En esta oportunidad construiremos una aplicación android que nos permitirá consumir  un servicio web utilizando la libre...

Código de Control v7 en JavaScript

Código de Control v7 en JavaScript

En esta oportunidad, se deja a disposición de la comunidad de programadores de Bolivia y también porque no, del que quie...

Evitar ejecutar un programa java más de una vez

Evitar ejecutar un programa java más de una vez

Cuando se hace uso de programas a veces no importa que este cree más de una instancia al mismo tiempo, por ejemplo podem...

Problema Resuelto: Personalizar JTable

Problema Resuelto: Personalizar JTable

PROBLEMA: Se tiene un JTable con 19 columnas y 50 registros, se desea personalizar el JTable de la siguiente manera:...

Conectar C Sharp con MySQL

Conectar C Sharp con MySQL

Ya tengo varios post sobre conexión a base de datos en varios lenguajes y claro no podía faltar c#, el siguiente tutoria...

Transacciones – Uso de Commit y Rollback

Transacciones – Uso de Commit y Rollback

Cuando desarrollamos aplicaciones en java con base de datos debemos tener cuidado en que se cumplan un conjunto de carac...

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

Comparte lo que sabes

Categorias

Últimas entradas

Las herramientas Online son cada vez más comunes y pueden encontrarse herramientas para casi todo tipo de tareas, en est...

Apache POI es la API de Java para el trabajo con archivos de Microsoft como son Word, Excel y Power Point. Apache POI se...

Gallery.io es una herramienta de colaboración gratuita desarrollada por Google para cargar trabajos de diseño, obtener c...

Android cuenta con una serie de herramientas en su API para el trabajo con gráficos, entre estos podemos mencionar: Bitm...

Android Bolivia

MAUS