PARTE II. CREANDO LA BASE DE DATOS Y CONECTANDOLA A NUESTRO PROYECTO
1. Crear nuestra base de datos en PostgreSQL.
Usando cualquier Administrador (psql, pgadmin3, pgmanager, etc etc) para PostgreSQL creamos una base de datos que se llame "biblioteca".
2. Haciendo la conexion.
Vamos a netbeans y seleccionamos la ficha Services, alli desplegamos el Nodo Databases -> Drivers, luego hacemos click derecho en sobre PostgreSQL* y escogemos "Connect using..."
*Si no tenemos el driver listado debemos agregarlo, bajando el driver jdbc para PostgreSQL de http://pgfoundry.org/projects/jdbc/ y agregandolo con las opciones que netbeans nos da.
Luego nos aparece la ventana para configurar nuestra conexion usando el driver jdbc de PostgreSQL, asi que solo ponemos lo que corresponda en cada campo, mas o menos como la figura siguiente:
Le damos click en "OK", nos pide escoger el esquema, asi que seleccionamos "public" y hacemos click en "Ok",
con lo que tenemos un nuevo nodo en el arbol bajo Databases.. algo como la figura:
desplegamos el nuevo nodo y veremos 3 carpetas "Tables", "Views" y "Procedures". Hacemos click derecho sobre "Tables" y escogemos la opcion "Create Table"..
nos aparece el formulario de creacion de una nueva tabla, asi que crearemos nuestra tabla que se llame "libros" y con los campos como se muestran en la figura (para agregar un nuevo campo solo debemos hacer click en el boton "Add column"):
Asi podemos crear tambien las otras tablas necesarias para nuestra aplicacion: "usuarios" y "prestamo_de_libros", soy consciente de que no uso ningun estandar de nomenclatura ni que el diseño de la base de datos es el adecuado y bla bla bla.. solo es un EJEMPLO con fines netamente didacticos :o), aun asi recomiendo dar integridad referencial (claves foraneas en la tabla "prestamo_de_libros" con algun otro administrador de PostgreSQL de tal forma que cuando despleguemos el nodo "Foreign keys" de la tabla "prestamo_de_libros" tengamos algo como la figura siguiente:
Bueno para los que deseen solamente crear la base de datos desde cualquier otro medio y empezar a hacer la aplicacion aqui les doy el script de creacion de la base de datos "biblioteca":
CREATE TABLE public.libros (
codigo smallint NOT NULL,
titulo character varying(45),
autor character varying(45),
isbn character varying(45)
) WITHOUT OIDS;
--
CREATE TABLE public.usuarios (
codigo smallint NOT NULL,
nombre character varying(50),
direccion character varying(50),
documento character varying(15),
telefono character varying(15),
fecha_nacimiento date,
sexo character(1)
) WITHOUT OIDS;
--
CREATE TABLE public.prestamo_de_libros (
numero integer NOT NULL,
fecha date NOT NULL,
usuario smallint NOT NULL,
libro smallint NOT NULL,
fecha_de_devolucion date NOT NULL
) WITHOUT OIDS;
--
ALTER TABLE ONLY libros
ADD CONSTRAINT libros_pkey PRIMARY KEY (codigo);
--
ALTER TABLE ONLY usuarios
ADD CONSTRAINT usuarios_pkey PRIMARY KEY (codigo);
--
ALTER TABLE ONLY prestamo_de_libros
ADD CONSTRAINT prestamo_de_libros_pkey PRIMARY KEY (numero);
--
ALTER TABLE ONLY prestamo_de_libros
ADD CONSTRAINT prestamo_de_libros_fk FOREIGN KEY (usuario) REFERENCES usuarios(codigo) ON UPDATE RESTRICT ON DELETE RESTRICT;
--
ALTER TABLE ONLY prestamo_de_libros
ADD CONSTRAINT prestamo_de_libros_fk1 FOREIGN KEY (libro) REFERENCES libros(codigo) ON UPDATE RESTRICT ON DELETE RESTRICT;
3. Enlazando el componente "Table".
Abrimos la pagina "FrmLibros" que hicimos anteriormente, luego vamos a nuestra paleta de componentes y jalamos un componente de tipo "Table" a la pagina,
le cambiamos el titulo a "LIBROS", y quedara algo asi:
luego vamos a la ficha "Services", seleccionamos nuestra tabla "Libros" y con el mouse la arrastramos y soltamos sobre el objeto "Table1" que acabamos de colocar en la pagina "FrmLibros" que tenemos abierta, aqui se puede demorar unos segundos en refrescar, y luego tendremos algo como se muestra:
Con esto se ha enlazado el Table con la tabla Libros de la base de datos. Se pueden dar algunas opciones para personalizar el diseño de la tabla usando la ventana de propiedades o haciendo click derecho sobre la tabla y escogiendo la opcion "Table Layout...". Por ejemplo vamos a corregir los titulos para que esten en mayusculas. Hacemos click derecho sobre Table1, escogemos "Table Layout...":
Alli podemos modificar muchos atributos mas, como alineacion de los datos, ancho de columnas, quitar columnas, agregar, etc etc.
Con esto ya podemos ejecutar "F6" y podremos ver los datos de nuestra tabla Libros.
Bueno dejo esta parte ahi, sino me demorarare mas en publicar.. la proxima si sera el insertar borrar y actualizar datos... y prometo que sera en menos tiempo que este post :o) , ademas revisare la nueva version de Netbeans 6.7, haber que cambios hay para VisualWeb. See yaaa