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

Google Open Source: Código Abierto +2000 proyectos

Google Open Source: Código Abierto +2000 proyectos

Google abre las puertas de Google Open Source un nuevo sitio web que une todos sus proyectos de “Código Abierto...

SQLite INSERT, UPDATE, DELETE, QUERY

SQLite INSERT, UPDATE, DELETE, QUERY

En este segundo post sobre Android y SQLite, veremos el uso de los métodos de gestión de base de datos más utilizados, e...

Introducción a los Gráficos en Pygame

Introducción a los Gráficos en Pygame

Antes de programar un videojuego, es necesario saber: Cómo representar figuras en la pantalla Cómo se manejan las coorde...

Utiliza 2 bases de datos diferentes en una aplicación parte I

Utiliza 2 bases de datos diferentes en una aplicación parte I

Cuando se desarrolla una aplicación, puede ser un requisito que este tenga soporte para varias tipos de base de datos, s...

Blog MVC en PHP (Código Fuente)

Blog MVC en PHP (Código Fuente)

En este post dejo el código fuente de un blog en PHP desarrollado siguiendo el patrón de diseño MVC (Modelo, Vista y Con...

Ejemplo de Pruebas Unitarias en Java

Ejemplo de Pruebas Unitarias en Java

Una Prueba Unitaria, es una forma de comprobar que nuestro código, hace lo que se supone debe hacer; es decir, se asegur...

Comparte lo que sabes

Categorias

Últimas entradas

Netbeans es uno de los entornos de desarrollo integrado (Integrated Development Environment – IDE)  más conocidos...

Geany es un editor de texto para Sistemas Operativos Linux, windows y MAC que utiliza el kit de herramientas GTK+ con ca...

En este post te hablaremos sobre una interesante herramienta para le lectura y edición de metadatos que no te debe de fa...

Java cuenta con la clase java.lang.Math  la cual contiene métodos para realizar operaciones numéricas básicas como las f...

Android Bolivia

MAUS