Conexiones .Net Con Access 2007 o 2010

12 noviembre, 2010 at 14:14 (Ado.Net, C#, SharpDevelop, WindowsForm)

Introducción.

Ado.net provee varia formas de conectarnos a varios gestores de base de datos.

Pero a veces también es útil crearnos aplicaciones que usen Access para poder guardar los datos. Si bien no es la mejor forma pero puede llegar a ser muy útil para ciertos aspectos como guardar ciertos datos que no sea muy relevantes pero sean útiles en nuestra aplicación (configuración etc.).

Para una seguridad extra podemos agregar a Access un password para poder tener mayor grado de confianza de que nuestros datos están seguros.

Usaremos la librería Oledb que provee Microsoft para la conexión de la base de datos esta librería llamara a un driver especifico que es distinto en Access 2003 y 2007 y superiores, ya que en la versión de 2007 de Access se guarda el archivo como accdb. Y en Access 2003 mdb.

En este tutorial usaremos Access 2010 aunque el 2007 no tiene diferencias importantes.

Usaremos Windows Form para la prueba y uso de esta librería. Aunque para este ejemplo usamos Visual Studio 2010 con cualquier versión de Visual Studio podremos realizar la conexión también con las versiones Express o podemos usar SharpDevelop los pasos serán los mismos.

Materiales.

1. Access 2007 o 2010

2. Visual Studio 2010 o SharpDevelop

Manos a la Obra.

1.- Primero Crearemos la base de datos en Access.

clip_image002

Para el ejemplo usaremos la base de datos DbInscripcion la cual contendrá una tabla alumno y materia la cuales se relación con inscripción.

clip_image004

El diagrama de base de datos es el siguiente:

clip_image006

2.- Creamos un proyecto de Windows Form.

3.- Importaremos a Visual Studio la base de datos en Access haciendo click derecho al proyecto y agregando elemento existente.

clip_image008

Buscamos el archivo.

2010-11-11 19h43_53

Cuando Adicionemos el archivo a nuestro proyecto VS nos desplegara un asistente para adicionar un Data Set Tipado. Escogemos cancelar para que no agregue este data set.

clip_image012

Nota.- Existe un problema con los driver de Access en Windows de 64 así que si son de 64 pueden ocurrir un error diciéndole que no se encuentra el controlador de Access.Oledb.12.

2010-11-11 20h00_37

Para que nuestra solución funcione y podamos probar el ejemplo tenemos que cambiar la arquitectura de nuestra aplicación. De 86 a Any Pc si queremos que funcione en todas las PC.

clip_image016

Recuerden que esto solo es para Windows de 64.

4.- Insertamos un botón al formulario Windows para probar la conexión a la base de datos. Generamos el evento clic del boton

2010-11-11 20h01_37

5.- Agregamos las librerías al formulario con using System.Data.OleDb;

.

2010-11-11 19h40_46

6.- Ahora comenzamos a crearnos el Objeto OdbcConnection para verificar si estamos conectados a la base de datos.

2010-11-11 20h02_38

Hacemos ejecutamos la aplicación y verificamos que realmente estamos conectados.

clip_image024

6.- Una vez verificado que la conexión está bien y la cadena de conexión es la correcta creamos el formulario para adicionar datos a la tabla Alumno.

clip_image026

7.- Ahora creamos los objetos necesarios para poder interactuar con la base de datos e insertamos los datos hacia el archivo Access.

clip_image028

La instrucción |DataDirectory|\DbInscripcion.accdb la ruta hace referencia a que el archivo de Access está en la misma ruta que el ejecutable de la aplicación. También podemos poner una ruta del disco duro como C:\DbInscripcion.accdb pero si queremos que nuestra aplicación pueda ser portable nos sirve de mejor manera la primera forma.

Una vez ejecutada la aplicación agrega los datos con éxito.

clip_image030

Y verificamos si realmente ha agregado a la base de datos nuestro nuevo alumno, sin embargo como el archivo Access está dentro de nuestra solución. Cuando se genera el ejecutable también se copia el archivo y es ahí donde inserta nuestros datos y no el archivo que está en nuestro proyecto. Es decir está en la carpeta bin\debug

clip_image032

clip_image034

Abrimos el archivo que está junto con el ejecutable y veremos que ahí se encuntra nuestro datos ingresados.

clip_image036

Conclusión

Para ingresar datos y obtenerlos de un archivo de Access no hay mayor dificultad que decirle donde esta nuestro archivo. También tenemos que cuidar que nuestro archivo solo puede ser accedido por una aplicación y no por múltiples aplicaciones o instancias de nuestra aplicación al mismo tiempo.

Urlgrafía.

http://www.conectionstring.org

Editado

Les dejo el codigo fuente del ejemplos aca
Codigo Fuente

Permalink 33 comentarios

Conexiones .Net Con Mysql

21 octubre, 2010 at 16:49 (Ado.Net, C#, SharpDevelop, Visual Studio)

Introducción.

Mysql es una base de datos open source aunque tiene una versión comercial llamada Mysql Enterprice.

Mysql es una base de datos muy rápida en respuesta, es muy usada en ámbitos web, su gran respuesta es una de sus mayores cualidades, aunque al permitir tal velocidad en su respuesta sacrifica ciertos aspectos que el desarrollador tiene que tomar en cuenta una de ellas es que no cuenta con integridad referencial lo cual significa que no contamos con llaves foráneas y relacionamiento, la seguridad y la integridad de las tabla están a cargo del desarrollador cuidando esto detalles.

Para la conexión a la base de datos Mysql .Net no cuenta con una librería propia para este motor de base de datos pero eso no es un problema ya que para la mayoría de las base de datos (si no todas) existen librerías para .Net que permiten la conexión a la base de datos. Mysql ha desarrollado una librería para la conexión de la base de datos como se verá más adelante. Esta librería se presenta en tres versiones, una de ellas (la que usaremos) es un tipo instalador la cual instala soporte para Mysql y adiciona a .Net para que estén disponibles en Visual Studio las librerías para la conexión con este motor de base de datos. La segunda es de tipo librería es decir que no es un instalador y que tenemos que importar la librería a nuestro proyecto, esta forma también es válida para la conexión con Mono en Linux y la tercera que es el código fuente de la librería por si alguien quiere modificar algo.

Usaremos Windows Form para la prueba y uso de esta librería. Aunque para este ejemplo usamos Visual Studio 2010 con cualquier versión de Visual Studio podremos realizar la conexión la librería que instalaremos, es un complemento a Visual Studio la cual como dijimos añade a .Net Framework la librería y da soporte usando el asistente de conexión al estilo de SQL Server, pero este instalador hasta la fecha solo da el soporte para VS 2008 y no para la versión VS 2010 aunque es no es problema solo no podremos usar el asistente de conexión (no usaremos para el ejemplo) pero si podremos importar la librería.

Para la gestión con el servidor de base de datos usaremos SQLyog Enterprice es una herramienta muy completa de fácil manejo que permite manejar todos los aspectos de mysql. También podemos usar phpmyadmin aunque necesita apache para funcionar, existen otras alternativas pero Sqlyog es una herramienta muy completa y que vale la pena probarla.

Materiales.

  1.  

Manos a la Obra.

1.- Primero Crearemos las tablas en Mysql, podemos crear las tablas con Sqlyog enterprice o con cualquier editor de Mysql también podemos usar la línea de comandos que trae Mysql pero una herramienta grafica facilita mucho la tarea

Para el ejemplo usaremos una tabla alumno y materia la cuales se relación con inscripción.

El diagrama de base de datos es el siguiente:


Como vemos no existen la relación ya que Mysql no tiene integridad referencial aunque las especifiquemos.

El script es:

CREATE DATABASE DbInscripcion

CREATE TABLE Alumno

(

Ci VARCHAR(13) PRIMARY KEY,

Nombre VARCHAR(200),

Direccion VARCHAR(200),

Edad INTEGER

);

CREATE TABLE Materia

(

CodMateria VARCHAR(13) PRIMARY KEY,

NombreMateria VARCHAR(50),

Descripcion VARCHAR(200)

);

CREATE TABLE Inscripcion

(

Ci VARCHAR(13),

CodMateria VARCHAR(13),

FechaInscripcion DATE,

FOREIGN KEY(Ci)REFERENCES Alumno(Ci),

FOREIGN KEY(CodMateria)REFERENCES Materia(CodMateria)

);

 

 

2.- Creamos un proyecto de Windows Form para la conexión con Mysql. Y instalamos las librerías de Mysql para poder usar las librerías para la conexión.


3.- Agregaremos a nuestro proyecto de Visual Studio la librería Mysql.Data como vemos esta librería ya fue agregada a .Net por el instalador

Haciendo click derecho a la carpeta Referencias en el Solution Explorer adicionamos nuestra librería


 

Buscamos la librería System.Data


4.- Insertamos un botón al formulario Windows para probar la conexión a la base de datos. Generamos el evento clic del botón


 

5.- Agregamos las librerías al formulario con using.


6.- Ahora comenzamos a crearnos el Objeto MysqlConnection para verificar si estamos conectados a la base de datos.


 

Hacemos ejecutamos la aplicación y verificamos que realmente estamos conectados.


 

6.- Una vez verificado que la conexión está bien y la cadena de conexión es la correcta creamos el formulario para adicionar datos a la tabla Alumno.


 

7.- Ahora creamos los objetos necesarios para poder interactuar con la base de datos e insertamos los datos hacia la base de datos.


Una vez ejecutada la aplicación agrega los datos con éxito.


 

Y verificamos si realmente ha agregado a la base de datos nuestro nuevo alumno.


Observamos que usar una base de datos Mysql en un proyecto de .Net es realmente fácil y sencillo y no presenta más problemas que los habituales para la conexión a una base de datos, además los objetos para realizar la conexión y la interactividad con la base de datos son parecidos a los habituales de Ado.net.

Urlgrafía.

http://www.conectionstring.org

Permalink 12 comentarios

Conexiones .Net Con Postgresql 8.4

21 mayo, 2010 at 12:22 (Ado.Net, C#, General, SharpDevelop)

Introducción.

Ado.net provee varia formas de conectarse a distintas base de datos de muchas formas ya sea por ODBC o también usando librería creadas por terceros que ayudaran a la conexión con la base datos que se requiera, la forma de conexión es simple y de la misma forma como conectamos a una base de datos sqlserver y describe así mismo las misma clases que en la librería System.Data.SqlClient.

Una de esta librería para la conexión de Postgresql con .Net es la librería Npgsql, la cual usaremos para la conexión a la base de datos postgresql.

Esta librería no permitirá conectarnos sin mayor problema y también es util para usarla con Mono.

Usaremos Windows Form para la prueba y uso de esta libreria. Aunque para este ejemplo usamos Visual Studio 2010 con cualquier versión de Visual Studio podremos realizar la conexión.

Materiales.

  1. Postgresql 8.4
  2. Npgsql 2.0.9 para Net 4.0 o 3.5
  3. Visual Studio 2010 o SharpDevelop

Manos a la Obra.

1.- Primero Crearemos la base de datos en postgresql, podemos crear la base de datos con PgAdmin III (url).

O con cualquier editor de postgresql que encontremos uno bueno aunque es de pago pero tiene una versión express es Sql Manager 2010 for Postgresql (url).

Para el ejemplo usaremos la base de datos DbInscripcion la cual contendrá una tabla alumno y materia la cuales se relación con inscripción.

El diagrama de base de datos es el siguiente:



El script es:

create database DbInscripcion

create table Alumno

(

Ci varchar(13) primary key,

Nombre varchar(200),

Direccion varchar(200),

Edad integer

);

create table Materia

(

CodMateria varchar(13) primary key,

NombreMateria varchar(50),

Descripcion varchar(200)

);

create table Inscripcion

(

Ci varchar(13),

CodMateria varchar(13),

FechaInscripcion date,

Foreign Key(Ci)References Alumno(Ci),

Foreign Key(CodMateria)References Materia(CodMateria)

);

2.- Creamos un proyecto de Windows Form.

3.- Importaremos a Visual Studio la librería que Npgsql haciendo click derecho a la carpeta Referencias en el Solucion Explorer

Buscamos la librería  Npgsql.dll

4.-  Insertamos un botón al formulario Windows para probar la conexión a la base de datos. Generamos el evento clic del boton

5.- Agregamos las librerías al formulario con using.

6.- Ahora comenzamos a crearnos el Objeto NpgsqlConnection para verificar si estamos conectados a la base de datos.

Hacemos ejecutamos la aplicación y verificamos que realmente estamos conectados.

6.- Una vez verificado que la conexión está bien y la cadena de conexión es la correcta creamos el formulario para adicionar datos a la tabla Alumno.

7.- Ahora creamos los objetos necesarios para poder interactuar con la base de datos e insertamos los datos hacia la base de datos.

Una vez ejecutada la aplicación agrega los datos con éxito.

Y verificamos si realmente ha agregado a la base de datos nuestro nuevo alumno.

Observamos que usar una base de datos Postgresql en un proyecto de .Net es realmente fácil y sencillo y no presenta más problemas que los habituales para la conexión a una base de datos además los objetos para realizar la conexión y la interactividad con la base de datos son parecidos a los habituales de Ado.net.

Nota.

Si no muestra un cuadro de dialogo como este no hay problema solo presionamos cancelar y listo. Lo que pasa es que la librería busca el código fuente.

Espero que les sirva nos vemos en la proxima entrega de oracle.

Este es el manual en PDF:

ConexionesPostgresqlConNet

Permalink 9 comentarios

Instalacion de Mono 2.4 en Windows

12 mayo, 2010 at 20:59 (Mono, SharpDevelop)

Este es un pequeño manual de cómo empezar a desarrollar en SharpDevelop 3.0 con Mono 2.4 en Windows Vista (También Funciona en XP).

Lo que necesitamos y el Orden de instalación:

1.- Primero necesitamos instalar Framework 3.5 Sp1: http://www.microsoft.com/downloads/details.aspx?FamilyId=333325FD-AE52-4E35-B531-508D977D32A6&displaylang=es

2.- Descargamos Mono 2.4 también instalamos la descarga de:

http://www.go-mono.com/mono-downloads/download.html

3.- Ahora descargamos SharpDevelop 3.0, también instalamos de:

http://www.icsharpcode.net/OpenSource/SD/Download/

4.- También necesitamos las fuentes de SharpDevelop (Código Fuente la usaremos después): http://www.icsharpcode.net/OpenSource/SD/Download/

Instalamos Primeramente Framework 3.5 luego Mono 2.4 y Finalmente SharpDevelop.

Hasta Aquí tenemos Funcionando SharpDevelop 3.0 pero no aparece las fuentes para desarrollar con Mono 2.4, Esto se debe que cuando salió SharpDevelop 3.0 solo existía hasta la versión de Mono 2.0 y la 2.4 todavía estaba en desarrollo así que por esta razón SharpDevelop no reconoce mono 2.4 pero con algunos cambios en el código fuente de SharpDevelop podemos lograr que reconozca Mono 2.4, Así que manos a la Obra.

1.- Descomprimimos Las Fuentes de SharpDevelop lo cual nos dará varias Carpetas:

CarpetasMono

La Carpeta que nos importa es “samples”, sin embargo la que nos importa realmente es la carpeta mono que está dentro de samples. Ahora copiamos toda la carpeta samples donde instalamos SharpDevelop en mi caso C:\Program Files\SharpDevelop\3.0 (Recuerden que estamos en Windows Vista Pero también funciona en Windows  Xp, pero tal vez la dirección sea C:\Archivos de Programa\SharpDevelop\3.0).

2.- Ahora Para que SharpDevelop reconozca Mono 2.4 debemos cambiar algunas clases de SharpDevelop 3.0 así que debemos cambiar las misma, ejecutamos SharpDevelop 3.0 para cambiar las fuentes, En Windows Vista debemos ejecutar SharpDevelop 3.0 Como Administrador, esto podemos hacerlo en Windows Vista dándole click derecho al acceso directo de SharpDevelop 3.0 y buscar “ejecutar como administrador”. Este paso es necesario ya que como copiamos la carpeta “samples” en C:\Program Files\SharpDevelop\3.0 y la seguridad en Windows Vista no permite cambiar o modificar los archivos si no somos administradores. Así que este paso es importante en Windows Vista pero no existe problemas en Windows Xp.

EjecutarComoAdministrador

Ahora en ShapDevelop Vamos a Archivo àAbrir Proyecto/Solucion y buscamos la carpeta C:\Program Files\SharpDevelop\3.0\samples\Mono, el proyecto Mono.AddIn la cual abriremos con SharpDevelop.

AbriConSD

3. El archivo que debemos cambiar primero es “TargetMonoFrameworkVersion”.

Nota: esta no es una clase es  una enumeración es un tipo de dato que tiene C#.

Entonces cambiamos el código como sigue:

using System;

namespace Mono.Build.Tasks

{

public enum TargetMonoFrameworkVersion

{

Version11 = 0,

Version20 = 1,

Version24=2,

VersionLatest = 1

}

}

Debemos añadir la línea “Version24=2”

4. Ahora cambiamos el archivo “MonoToolLocationHelper”

Primero cambiamos el método “GetPathToMonoFramework

public static string GetPathToMonoFramework(TargetMonoFrameworkVersion version)

{

switch (version)

{

case TargetMonoFrameworkVersion.Version11:

return GetPathToMonoFrameworkVersion11();

case TargetMonoFrameworkVersion.Version20:

return GetPathToMonoFrameworkVersion20();

case TargetMonoFrameworkVersion.Version24:

return GetPathToMonoFrameworkVersion24();

}

return null;

}

La parte que agregamos es un nuevo método que crearemos más adelante:

case TargetMonoFrameworkVersion.Version24:

return GetPathToMonoFrameworkVersion24();

Ahora tenemos que crearnos el método que insertamos en el anterior método. Entonces escribimos el método “GetPathToMonoFrameworkVersion24”:

static string GetPathToMonoFrameworkVersion24()

{

if (monoFrameworkVersion20Path == null)

{

monoFrameworkVersion20Path = GetPathToMonoFramework(@”mono\2.4″);

}

return monoFrameworkVersion20Path;

}

Listo ya están realizados todos los cambios necesarios para que comencemos a  programar con Mono 2.4.

5. Compilamos el proyecto hacemos click en el Menu: “Generar” à”Generar Solucion”, (o presionamos F8). En este paso solo compilamos el proyecto para que ahora SharpDevelop 3.0 reconozca Mono 2.4. Reiniciamos SharpDevelop 3.0 y Vemos Los Cambios.

ProyectoMono

6. Hasta aquí tenemos configurado SharpDevelop 3.0 para ejecutar código de Mono 2.4, pero si tratamos de compilar el proyecto nos dará un error, todavía no está configurado las variables de entorno de Windows para que ejecute con el compilador de Mono 2.4, para configurar esta variables de entorno tenemos que introducir “MONO_EXTERNAL_ENCODINGS” y con el valor “default_locale” (sin comillas).

Para Configurar estas variables de entorno primero vamos a Equipo

Y le damos click derecho (En Win Xp “Mi Pc”) en propiedades à Configuracion avanzada del sistema, la cual nos dará una pantalla de propiedades del sistema

PropiedadesSsitema

Luego vamos al botón Variables de entorno.

Variables de entorno

En ambas varibles de entorno una para el usuario local y la otra para el sistema, vamos al botón “Nueva” e introducimos “MONO EXTERNAL ENCODINGS” y con el valor “default_locale” (sin comillas).

Nueva Varibles de Entorno

7. Finalmente vamos a la variable Path le damos editar y al final de toda esa cadena copiamos la dirección de instalación de los binarios de Mono 2.4 en mi caso: C:\Program Files\Mono-2.4\bin, si no tuviera el punto y coma al final de la cadena le agregamos y copiamos nuestra ruta:

Variable Path

8. Finalmente vamos a las variables TMP y TEMP y verificamos  la ruta, si nuestras rutas tuviera tildes como pasa en Windows Xp que tienes

C:Documents and Settingusuario….Temp”, bueno pues esta ruta Contiene la palabra “Configuración” con tilde y es por eso que Sharpdevelop no podra acceder a ella, es por ello que debemos cambiar las VARIABLES DE ENTORNO llamada “TEMP” y “TMP”, por una más directa ejemplo “C:TEMP”. En Windows Vista no existe ese problema.

Variables de entorno de Vista sin Comillas por defecto

Variables TMP

Con todo esto ya esta listo y vemos que compila con normalidad:

PruebaGtk

Espero que les Sirva este pequeño manual

Permalink Dejar un comentario

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

Únete a otros 29 seguidores

A %d blogueros les gusta esto: