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

SQLite: Encriptación de datos

SQLite: Encriptación de datos

SQLite es un sistema de gestión de bases de datos relacional,  escrita en C, si se desea hacer uso de encriptación con S...

Exportar registros MySQL a Excel

Exportar registros MySQL a Excel

Java Excel API es un API para java que permite a los desarrolladores leer y escribir en hojas de cálculo Excel. jexcelap...

Gráficos de tortas en iReport

Gráficos de tortas en iReport

Los gráficos de torta, también llamados gráficos de 360 grados o circulares, son gráficos estadísticos que se utilizan p...

iFrame Injection – Ocultar código malicioso

iFrame Injection – Ocultar código malicioso

En ocasiones los administradores de sitios web experimentan problemas de lentitud en su carga o en el peor de los casos...

Informes Access con JasperReport/iReport

Informes Access con JasperReport/iReport

En este post vemos la forma de conectar una base de datos Access con JasperReport para diseñar y ejecutar reportes. Para...

Crea formulario de login estilo Agents of Shield Marvel

Crea formulario de login estilo Agents of Shield Marvel

En esta oportunidad aprovechando el interés que tienen ahora los superheroes de Marvel, crearemos un formulario de logue...

Comparte lo que sabes

Categorias

Últimas entradas

Si trabajas con redes sociales (RRSS) a continuación te muestro tres herramintas gratuitas que te ayudaran a la hora de...

Por lo general se usan transacciones a nivel base de datos y posteriormente se llaman estos a través de procedimientos a...

En este post, aprenderemos como conectar Visual Basic 6 con SQL Server, abrir una tabla, leer su contenido y mostrar est...

Lo que veremos en este post es la configuración del driver para PHP de SQL Server que ha creado Microsoft el cual permit...

Herramientas

Generador de Enlaces a Whatsapp