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

CRC32: Verificación de Redundancia Cíclica

CRC32: Verificación de Redundancia Cíclica

El CRC o Verificación de Redundancia Cíclica o Comprobación de redundancia cíclica  es una técnica utilizada para detect...

Búsqueda dinámica en JList

Búsqueda dinámica en JList

Un JList nos permite almacenar objetos en una lista y mostrarlos gráficamente en una serie vertical en el cual el usuari...

Cambiar API Level en Android Studio

Cambiar API Level en Android Studio

Cuando desarrollamos aplicaciones en el IDE (Entorno de Desarrollo Integrado) de Android Studio, es importante indicar e...

Ejercicios Resueltos C Sharp

Ejercicios Resueltos C Sharp

1. Dado N números enteros ingresados por teclado, determine el promedio de estos 01 static void Main(string[] args) 02 {...

Procedimientos Almacenados: Parámetros INOUT

Procedimientos Almacenados: Parámetros INOUT

En post anteriores vimos lo que son los parámetros IN y los parámetros OUT pero existe otro tipo de parámetro que es la...

Conexion vb.net y access

Conexion vb.net y access

Para conectar Visual Basic .NET con una base de datos de MS Access se utiliza la libreria «System.Data.OleDb» en el sigu...

Comparte lo que sabes

Categorias

Últimas entradas

Sourcetrail el explorador de código fuente de los lenguaje C, C ++, Java y Python se pasa al Software Libre y desde ahor...

Tapiti v1.2.0 es un Software Educativo Gratuito multiplataforma para los sistemas operativos Windows y Linux el cual no...

En este post vemos un ejemplo de como convertir un archivo de imagen JPG en un archivo PDF utilizando para ellos la libr...

El modelo Tweetbotornot es un algoritmo de aprendizaje automático que se entrenó en miles de cuentas reales de bot y no...

Herramientas

Generador de Enlaces a Whatsapp