Conexiones .Net Con Postgresql 8.4
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.
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:










Los números de 2010 « Blog de Giovanni Callisaya dijo:
4 enero, 2011 a 17:49
[...] Conexiones .Net Con Postgresql 8.4 mayo, 2010 3 [...]
Blanco dijo:
28 mayo, 2011 a 4:02
Hola capo, basico pero entendible. Lo probaré. Otra consulta. Es que nunca he manejado el visual studio con pgsl, pero a la hora de programar, las sentecias corren igual que con el sql ?
Estare al tanto .Saludos
Iván
Giovanni Vladimir dijo:
31 mayo, 2011 a 17:55
La sentecias de Sql genericas como Insert, Update , Select son las mismas en todos los gestores. pero Postgresql con Pgsql es mas complejo que Transac Sql, por lo menos a mi me resulto mas facil Transac que Pgsql.
Dacia dijo:
30 mayo, 2011 a 2:28
Gracias!! me sirvió de mucho =)
jeffer dijo:
29 junio, 2011 a 19:39
estoy tratando de crearla con sharpdevelop y me da una exepcion de un archivo Npgsqlconection que no lo encuentra, y de hecho el directorio que es c/proyects donde lo busca no existe, no se a donde tenga que cambiar ese directorio :S
Giovanni Vladimir dijo:
5 julio, 2011 a 16:19
copia la dll de Ngpsql a la ruta donde esta en ejecutable.
veyron dijo:
26 octubre, 2011 a 12:36
Gracias por el aporte.
con SQL tengo mi cadena
CadenaConexion = ConfigurationManager.ConnectionStrings(“BancoLaboralConnectionString”).ConnectionString
es igual con postgresql.