Tutorial Java – Creación la Base de Datos ”Biblioteca” de Ejemplo


Tutorial Java

En el artículo anterior, te mencioné que tienes prácticamente el 50% de tu proyecto desarrollado si es que empiezas primero creando un Diccionario de Datos bien definitivo para tu Sistema.

¿Sábes cuanto tiempo llevó para construirse la represa más grande del mundo “ITAIPU”, que es donde hago oficina en la actualidad?…

Llevó 7 años, ¿Y sabes cuánto tiempo le dedicaron a su Estudio y Planeación?…

Pues aunque no lo creas eso orilló también por los 7 años. Cómo vés la planeación es tan importante cuanto la construcción.

Con ésto sólo te quiero dar un ejemplo de la importancia que tiene realizar un buen estudio y planeación antes de emprender cualquier obra, ya que en informática construimos sistemas.

Es por eso que para ganar agilidad y ser un desarrollador eficiente tienes que adoptar ésta técnica para los nuevos sistemas que vas a desarrollar, no digo que tu mismo tengas que hacerlo, pero si que tengas algo bien definido antes de empezar tu gran obra (incluso puedes contratar un analista para hacerlo).

El día de hoy y siguiendo con nuestro Tutorial de Java – “Creando Aplicaciones Swing” te mostraré paso a paso cómo se crea la estructura de los datos, es decir la base de datos, tablas, campos, indices y relaciones en la herramienta phpMyAdmin que habiamos instalado con el AppServ.

El ejercicio lo haremos juntos hasta un cierto punto que yo crea que ya estás apto para que tu sólo lo puedas continuar hasta terminar.

Te pido que no te aburras, ya que debes concluir con los ejercicios, el tutorial parece largo pero te aseguro que si sigues al pie de la letra terminaras de crear la Base de datos en 40 minutos (incluyendo la lectura de las instrucciones)

Ingresar al Servidor MySQL

El servidor MySQL es un software que se queda ejecutando como un servicio en nuestro computador, quedandose en escucha de peticiones de solicitud de alguna peticion o cuando se le envia alguna información para almacenar.

El acceso al Servidor MySQL se debe realizar por medio de otro programa denominado Cliente. Existen varios programas clientes que pueden ser utilizados para acceder al servidor de forma que podamos crear nuestras tablas, campos, indices, etc.

Para este tutorial utilizaremos el Cliente phpMyAdmin, ya que éste cliente viene incluido cuando instalamos el AppServ.

Para ingresar en el programa Cliente phpMyAdmin de MySQL, se debe abrir el Explorador de Internet, que en mi caso es el Internet Explorer (pero también puede ser Mozilla Firefox), para ello presionar doble clic sobre el siguiente icono:

Figura 1. Icono del Navegador

Una vez dentro del navegador, se debe digitar la siguiente dirección:
http://localhost

con lo cual se abrirá la página del AppServ, similar a la siguiente figura:

Figura 2. Página de Inicio del Programa AppServ.

Para ingresar finalmente al programa phpMyAdmin, debemos  presionar un clic sobre el enlace con la siguiente descripción:
phpMyAdmin Database Manager Versión 2.9.2

Donde nos aparecerá el formulario de acceso de la Figura 3.

En el proceso de instalación del MySQL hemos asignado una contraseña para el usuario root, y es esa misma contraseña la que debemos consultar aquí.

Figura 3. Control de Acceso al Servidor MySQL

Si seguiste las instrucciones, así como te mandé en el proceso de instalación, los datos que debes ingresar aqui serán:

  • Usuario: root
  • Contraseña: admin

Creación de la Base de Datos

A partír de ahora empezaremos a crear la base de datos “Biblioteca”, siguiendo el documento del artículo anterior que te dije que imprimieras y que me imagino tienes a mano.

Si no lo tienes a mano ahora o aún no lo imprimiste, por favor, consíguelo para que podamos terminar la creación rápidamente.

Observa la siguiente figura que más abajo te doy las instrucciones:

Figura 4. Creación de nueva base de datos.

Debido a que el servidor MySQL maneja multiples idiomas y diferenes juego de caractéres (cotejamientos) para almacenar la  información de diferentes paises, se debe seleccionar cual cotejamiento especificamente se utilizará para la base de datos Biblioteca, el cotejamiento que más se ajusta a la configuración del idioma español es utf8_spanish_ci.

Realiza los siguientes puntos para confirmar la creación de la base de datos:

  1. Cotejamiento de Conexiones MySQL: utf8_spanish_ci
  2. Crear nueva base de datos: BIBLIOTECA
  3. Cotejamiento: utf8_spanish_ci
  4. Luego presionar sobre el botón CREAR

Luego aparecerá la siguiente página, en el navegador:

Figura 5. Base de Datos creada.

En el caso de que la base de datos haya sido creada exitosamente, el phpMyAdmin deja seleccionado la base de datos y muestra el comando que ha sido ejecutado:

  1. Muestra la base de datos seleccionada, el valor (0) que aparece a la izquieda indica que la base de datos biblioteca posee 0 (cero) tablas.
  2. Mensaje que indica que se creó correctamente la base de Datos.
  3. Muestra el comando SQL que ha sido utilizado para crear la base de datos.

Creación de Tablas

Para crear una nueva tabla en la base de datos seleccionada, debe escribir el nombre para la nueva tabla y la cantidad de campos que va a poseer dicha tabla. Tenga presente que la tabla será creada en la base de datos seleccionada, que en este momento es Biblioteca.

Tabla Autores

Por ejemplo, observe la siguiente figura que aparece al crear la tabla Autores.

Figura 6. Creación de Tablas.

Complete los siguientes campos así como se muestra en la figura:

  1. Debe ser ingresado el nombre de la tabla a crear, en este caso, Autores.
  2. Debe ingresar la cantidad de campos que tendrá la Tabla Autores.
  3. Para crear, debe presionar sobre el botón CONTINUAR.

Despues de realizar dichos pasos apareceran otras opciones, debe completar los campos, tipos de campos y tamaños para los campos de la tabla, la imagen que aparece es igual a la siguiente:

Figura 7. Definición de campos para la nueva tabla.

Según el diccionario de datos, la tabla maestra Autores está compuesta de 3 (tres) campos: aut_codigo, aut_nombre y aut_nacionalidad, cuyas definiciones deben ser completadas en esta página.

  1. Complete el nombre, tipo y tamaños de campos a ser creados para la tabla autores.
  2. Complete también cualquier comentario útil para identificar el contenido de la tabla.
  3. El Motor de Almacenamiento o Engine de tabla que será creada, debe ser tipo InnoDB, esto debe ser así para todas las tablas siguientes que serán creadas.
  4. Para guardar la nueva Tabla, debe presionar clic sobre el Botón GUARDAR.

Cómo el campo aut_codigo, es la clave primaria de la tabla Autores y este campo también debe ser auto incremental (AUTO_INCREMENT), más adelante estaré dando las instrucciones para asignar dichos valores, ya que dichas opciones no se visualizan en la página actual porque están ubicadas muy a la derecha de la pantalla.

Nota: El motor de base de datos o Engine InnoDB es aquel que soporta relacionamientos con índices de claves foráneas, con dichas tablas también se puede realizar procedimientos almacenados y triggers.

Si no aparece la opción InnoDB el campo Motor de Almacenamiento para su selección, puede ser debido a que esta opción no fue marcada en el momento de la instalación, para solucionar el problema debe volver a re-instalar el servidor MySQL, seleccionando la opción de soporte para InnoDB.

Si la tabla se crea exitosamente, aparece el siguiente mensaje, además se muestra el comando SQL que fue ejecutado para crear dicha tabla.

Figura 8. Confirmación de creación de tabla.

Este formulario muestra lo siguiente:

  1. Muestra el comando SQL que fue utilizado para crear la tabla.
  2. Muestra la tabla autores que está dentro de la base de datos Biblioteca.
  3. El valor entre paréntesis, indica que existe una tabla dentro de Biblioteca.
  4. Para visualizar la estructura de la tabla, campos, tipos, tamaños e indices, presione el enlace ESTRUCTURA.

Modificación de Campos

Como se mencionó en el apartado anterior, el campo aut_codigo es la clave primaria (PRIMARY KEY o PK) de la tabla Autores, y además los valores para el campo deben generarse automáticamente de forma secuencial (1,2,3, etc.) es decir debe ser auto incremental (AUTO_INCREMENT).

Observe la siguiente figura para asignar la clave primaria al campo aut_codigo:

Figura 9. Asignación de clave primaria.

Figura 10. Confirmación para clave primaria.

  1. Para asignar la clave primaria presione clic sobre el icono de llave sobre el campo relacionado.
  2. Presione el botón Aceptar sobre la ventana de confirmación.

Nota: En cualquier caso solamente podrá crear una clave primaria por tabla.

Observe a continuación en la página de resultado, que el campo aut_codigo aparece subrayado, indicando que es una clave primaria:

Figura 11. Clave primaria creada con éxito.

El formulario muestra las siguientes informaciones:

  1. Mensaje indicando que se creó correctamente la clave primaria.
  2. Comando SQL que fue ejecutado para crear la clave primaria.
  3. Ahora el aut_codigo se muestra subrayado, indicando que es clave primaria.
  4. En la lista de indices también se puede visualizar que la clave primaria es el aut_codigo.

Para asignar el atributo de auto_increment se debe modificar el campo aut_codigo, ya que esto tampoco fue especificado en el momento de crear la tabla.

Para modificar el campo de una tabla, estando en la página de Estructura, realice los pasos mostrados en la siguiente figura:

Figura 12. Estructura de la tabla autores.

1. Presione clic sobre el lapiz para modificar el campo relacionado.

Nota: Cualquier campo puede ser modificado, en cualquier momento, en cuanto a tipo de dato, tamaño, etc. siempre y cuando los datos ya cargados en la tabla, acepten las modificaciones realizadas.

Para que el campo sea tipo auto incremental, dezplace la barra de desplazamiento hacia la derecha, y en el campo extra seleccione la opción auto_increment.

Figura 13. Asignación de auto_increment al campo.

  1. Dezplace barra más hacia la derecha.
  2. Seleccione la opción auto_increment en el combobox.
  3. Presione el botón GRABAR.

Nota: Se recuerda que para asignar a un campo el atributo de auto_increment, dicho campo previamente se debió haber asignado como clave primaria, de lo contrario no funcionaría.

A continuación se visualiza el resultado de la ejecución:


Figura 14. Asignación de auto_increment al campo.

  1. Muestra el comando SQL ejecutado para asignar el atributo de auto incremental.
  2. En la columna de Extra ya se puede visualizar que el atributo es auto_increment.

Aunque hasta aquí se ha creado la base de datos, tabla, campos e indices de forma automática y transparente es imprescindible que el alumno conosca y aprenda los comandos SQL utilizados durante la ejecución de estos pasos, para aumentar su conocimiento en cuanto a base de datos se refiera.

Esto también hará más fácil y comprensible el desarrollo de aplicaciones en la plataforma Java o en cualquier otra plataforma, debido a que todos los comandos de comunicación como consulta, inserción, alteración y eliminación de la base de datos son realizados con comandos SQL.

Con todos estos pasos se concluye la creación de la tabla Autores.

Tabla Ciudades

Para crear la tabla Ciudades debes siguir el mismo esquema de creación de la tabla Autores, te seguiré mostrando la creación de la tabla Ciudades pero omitiré algunos pasos ya que podrás repetir de los pasos seguidos recien.

Si no tocaste nada en la pantalla, la página se encuentra mostrando en la tabla Autores, para ubicar el phpMyAdmin en la base de datos Biblioteca y poder crear la tabla Ciudades, observe la siguiente figura y ejecute los pasos que le sigue:

Figura 15. Selección de Base de Datos.

Presione sobre cualquier una de las dos opciones señaladas para seleccionar la base de datos biblioteca y poder crear otra tabla.

Como podrá ver una vez presionado sobre el enlace, se selecciona la base de datos, se muestra la tabla autores y se permite la creación de una nueva Tabla.
 

Figura 16. Base de datos biblioteca.

Seguidamente, para crear una otra tabla escriba el nombre para la nueva tabla, Ciudades en este caso, introduzca también el número de campos, 2 en este caso y presione el botón Continuar, con lo cual aparecerá la siguiente página:

Figura 17. Campo de la tabla Ciudades.

Teniendo como guía tu Diagrama de Entidad-Relacion de la base de datos , introduce los campos solicitados:

  1. Campo ciu_codigo int(3).
  2. Campo ciu_descripción varchar(30).
  3. Digite cualquier observación para identificar la tabla.
  4. Seleccione el tipo de tabla InnoDB.
  5. Mueva la barra de desplazamiento más hacia la derecha para completar más campos.

Figura 18. Base de datos biblioteca.

  1. Seleccione la opción auto_increment del campo Extra, para el campo ciu_codigo.
  2. Marque el radiobutton de la clave primaria, también para el campo ciu_codigo.
  3. Presione sobre el botón Grabar.

Figura 19. Tabla Ciudades creada exitosamente.

Como podrás notar, en este caso la clave primaria y el auto incremental para el campo ciu_codigo fue realizado en el momento de la creación, agilizando así algunos pasos.

Note también que ahora ya existen 2 (dos) tablas en la base de datos.

Tabla Clientes

Se sigue el mismo proceso para crear la tabla clientes, Presione nuevamente clic sobre la base de datos e introduzca el nombre para la nueva tabla y la cantidad de campos, preste antención para seguir la representación gráfica mostrada al inicio:

Figura 20. Creación de la Tabla Clientes.

Seguidamente complete los 5 (cinco) campos, sus tipos y tamaños, también la observación sobre la tabla y el tipo de tabla, luego mueva la barra de desplazamiento más a la derecha, como se muestra en la siguiente figura:

Figura 21. Campos para la Tabla Clientes.

En la siguiente página seleccione el auto_increment de la columna Extra y presione clic sobre el icono de clave primaria, luego presione clic sobre el botón GRABAR para crear la nueva tabla.

Figura 22. Marcación de auto_increment y clave primaria.

Una vez hecho esto aparecerá la estructura de la tabla Clientes.

Relacionamiento entre Tablas

Una relación entre dos tablas describe algún vínculo entre ambas, Supongamos la relación de la tabla Ciudades y Clientes podría indicar que una Ciudadtiene” varios Clientes, una relación de Autores con Libros indica que un Autorha escrito” varios Libros.

Los relacionamientos se realizan entre las tablas para asegurar la consistencia de la información y para una mejor organización de los datos de forma a evitar datos duplicados.

Te mostraré en los siguientes pasos como crear la relación entre las tablas Clientes-Ciudades, de forma que tu puedas replicar lo mismo para las demás relaciones que aparecen en el Diagrama de Entidad-Relación

Clave Extranjera cli_ciudad

Observa que en el diagrama, la tabla Clientes  posee una clave extranjera (FK) en el campo cli_ciudad (en rojo) indicando que dicho campo de la tabla está relacionado con la clave primaria de la tabla ciudades.

Observe la siguiente figura, en donde se ha aislado las dos tablas para una mejor compresión:
 

Figura 23. Relacionamiento entre la tabla ciudades y clientes.

La figura anterior indica que existe una relación de “1 (uno) a muchos” entre la tabla ciudades y la tabla clientes. 1 (uno) del lado de ciudades y muchos del lado de clientes.

Los relacionamientos entre tablas siempre se realizan entre los campos que sean claves o indices, generalmente la relación de uno a muchos tiene relacionado un campo de clave primaria (PK) con otro campo de clave extranjera (FK), el lado 1 (uno) siempre corresponde a la tabla donde está la clave primaria (PK) y el lado muchos siempre corresponde a la tabla donde está la clave extranjera (FK).

Dicho relaciomiento entre tablas será creada ahora a través de un comando SQL, que se utiliza para ello:
 
Figura 24. Tabla Clientes creada exitosamente.

Para escribir cualquier comando SQL debe presionar clic sobre la pestaña superior “SQL” mostrado en la imágen anterior y digitar el comando que se muestra en la siguiente figura.
 

Figura 25. Comando para crear Clave Extranjera.

1. Escribir correctamente el comando SQL mostrado.
2. Presionar clic sobre el botón Continuar.

A continuación se explica el comando:

ALTER TABLE clientes ADD FOREIGN KEY (cli_ciudad) REFERENCES ciudades (ciu_codigo)

Paso a paso:

ALTER TABLE tabla1: indica cual tabla será alterada para adicionar la clave extranjera.
ADD FOREIGN KEY (campo1): cual campo será creada la clave extranjera.
REFERENCES tabla2 (campo2): con cual campo y tabla se establecerá la relación, este campo debe ser clave primaria.

Si el campo cli_ciudad aún no existe, se creará primero el campo y luego la clave foránea, si el campo cli_ciudad ya existe como ocurre en este caso, se creará sólo la clave foránea.
Nota: Tenga en cuenta que para establecer una relacionamiento entre una tabla y otra, ambas tablas deben ser del tipo InnoDB, y los campos que formarán parte del relacionamiento deben ser del mismo tipo y tamaño.

A continuación se muestra el resultado de la ejecución del comando SQL.
 

Figura 26. Clave extranjera creada con éxito.

Al visualizar la estructura de la tabla podrá ver la siguiente figura:
 

Figura 27. Estructura de la tabla clientes.

Conclusión

Así como lo dije al inicio el acceso al Servidor MySQL se realiza mediante otro software denominado Cliente, en este caso utilizamos el phpMyAdmin.

Creamos la base de datos Biblioteca, luego creamos algunas tablas, designamos los campos, tipos de campos, indices y por últimos las relaciones. Aunque para ésto utilizamos los recursos del phpMyAdmin te recordé que es muy importante conocer cada uno de los comandos SQL que son ejecutados por debajo, por qué? pues porque son los mismos comandos que utilizaremos mas adelante desde nuestra aplicación Java, por eso necesitamos conocer.

Todavía quedan pendientes la creación de la tabla Libros, Libros_Autores, Prestamos, Prestamos_Libros , que ahora dejo a tu cargo para que termines en estos minutos restantes, siguiendo claro este tutorial.

Acceso a todo el tutorial

Esta entrada forma parte de un tutorial de java que estoy desarrollando, para ver indice de contenido presiona aquí 

Hasta el próxima.

Marcos Jara
About these ads
Esta entrada fue publicada en Uncategorized y etiquetada , , , , , , , , , . Guarda el enlace permanente.

27 respuestas a Tutorial Java – Creación la Base de Datos ”Biblioteca” de Ejemplo

  1. Juan Carlos dijo:

    Buenos días, acabo de entrar en tu pagina y me parece fascinante; decirte que es raro encontrar un curso en el que fomente la practica en el aprendizaje.

    Estoy empezando desde cero y he instalado el appserver (última versión para windows 7).
    Todo ha ido genial hasta que intento acceder a phpMyAdmin que despues de ingresar el root y contraseña se queda la pagina en blanco y en la barra de estado pone terminado. ¿alguna sugerencia?
    Decirte que tengo conocimientos de instalar appserver en windows xp y me habia funcionado a la primera.

    Gracias de antemano

    • Marcos Jara dijo:

      Hola Juan

      Bueno, la versión 2.5.8 del appserv no es compatible con Win 7

      Busca e instala la versión más nueva de éste software, los pasos son los mismos,

      Saludos y exitos.

      • Leonardo dijo:

        Buen día Marcos, yo he tenido el mismo problema con Windows 7, lo que hice para que funcionara fué editar con el Bloc de Notas el archivo “Host” que se encuentra en la dirección: C:\Windows\System32\drivers\etc y ahí borrarle el # de la linea:
        # localhost name resolution is handled within DNS itself.
        # 127.0.0.1 localhost
        # 127.0.0.1 activate.adobe.com
        # ::1 localhost
        quedandome así:
        127.0.0.1 localhost
        luego reiniciando funciona perfectamente.
        Espero les sirva a los que tengan el mismo inconveniente.
        Saludos.

      • Marcos Jara dijo:

        Gracias Leonardo,

        Dejo tu comentario abierto, ya que de seguro a más de uno le va ser de gran utilidad.

        Saludos.

  2. LUIS ALFONSO GALLEGO MURILLO dijo:

    Profe gracias por sus conocimiento; ahora quiero saber despues de haber realizado toda las tablas en la base de datos biblioteca que hago para realizar las relaciones y saber que quedaron bien, y presione relaciones y a cada tabla segun el esquema suyo lo hice, pero me pregunto y los indices como los relaciono despues de creados.

    Gracias por su apoyo, estoy encantado en realizar todo el proyecto hasta el final.

  3. LUIS ALFONSO GALLEGO MURILLO dijo:

    Profe, gracias por sus conocimiento pero quiero saber como hago para ingresar los registros a las tablas, busco y busco desde el AppServ y no logro saberlo.

  4. Jorge dijo:

    digamos que quiero hacer una BD con imagenes.. seria posible con mysql? y si es.. como podria hacerlo?

  5. Daniel dijo:

    Hola profesor
    no entiendo por qué me sale esto…
    Error

    consulta SQL:

    ALTER TABLE clientes ADD FOREING KEY ( cli_ciudad ) REFERENCES ciudades( cli_codigo )

    MySQL ha dicho: Documentación
    #1064 – You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘KEY (cli_ciudad)
    REFERENCES ciudades (cli_codigo)’ at line 1

  6. Daniel dijo:

    Error

    consulta SQL:

    ALTER TABLE clientes ADD FOREIGN KEY ( cli_ciudad ) REFERENCES ciudades( ciu_codigo )

    MySQL ha dicho: Documentación
    #1005 – Can’t create table ‘.\biblioteca\#sql-f98_82.frm’ (errno: 150)

    • Marcos Jara dijo:

      Este error puede deberse a que en la columna cli_ciudad tengas valores nulos, o valores que no existan en el campo ciu_codigo de la tabla ciudad

      Verifica los valores y vuelve a intentarlo

  7. Miguel dijo:

    Como es lla consulta para agregar dos FOREIGNS KEYS en la tablla LIBROS_AUTORES??

  8. Héctor dijo:

    Muy bueno el tutorial, gracias por compartirlo con todos, felicidades y exitos.

  9. J.Carlos Sanz dijo:

    Acabo de iniciarme en este mundo, y nunca mejor dicho, y despues de recorrer multitud de paginas buscando informacion, he tenido la suerte de dar con esta. Y digo suerte porque tras varios videos he conseguido “entender” en mundo java y su potencialidad. No soy informatico y espero llegar a desarrollar aplicaciones. Gracias.

  10. saul dijo:

    Tengo las siguientes preguntas
    1.¿Cómo es la relación en palabras entre la tabla de prestamos y la tabla de Libros?

    2.¿Porque se ponen los campos pli_estado, pli_dias, pli_valor, pli_multa en la tabla Prestamos_Libros?

    Gracias.

    • Marcos Jara dijo:

      Hola Saul,

      Antes que nada gracias por tu pregunta, y disculpa por mi demora en contestarla, aquí va:

      1. No existe relación directa entre libros y prestamos, si entre prestamos_libros y libros.

      2. Esto es así por que en un prestamo que un Cliente puede hacer de una sóla vez, puede solicitar prestado varios libros, entonces lo que se hace es armar una estructura de cabecera-detalle o cabecera-item, prestamo sería la cabecera(los datos que se repetirían si se colocara todo en una tabla) y libros_prestados (los datos que no se repiten).

      El campo pli_estado almacena la situacion en particular del item prestado, es decir si esta en situacion de prestamo aún o ya se devolvió,
      – pli_dias almacenará la cantidad de días que se presta el libro, de forma a poder calcular posteriormente una multa en caso de que el cliente se haya atrazado en devolverla
      – pli_valor sería el monto que se cobra por prestar el libro(si lo hay) y ;
      – pli_multa es el valor de la multa, en el caso de que la diferencia de dias entre la fecha de entrega y fecha de prestamos haya superado la cantidad de días prestados.

      Espero haberte aclarado tus dudas y te animo a que sigas todos los ejercicios para construir al final el sistema de biblioteca.

      Saludos.

  11. Silverado dijo:

    Excelente página lo felicito. De antemano gracias….

  12. Scarface dijo:

    Hola yo nose exactamente las ventajas del AppServ y no quisiera meterme en otro lio del que ya me estoy metiendo asi que utilizare MySql GUI… aqui le dejo el Scrip espero su punto de vista
    create table Autores(
    aut_codigo int (3) auto_increment primary key,
    aut_nombre varchar(30) not null,
    aut_nacionalidad varchar(30) not null
    );

    create table Ciudades(
    ciu_codigo int(3) auto_increment primary key,
    ciu_descripcion varchar(30) not null
    );
    create table Clientes(
    cli_codigo int(3) auto_increment primary key,
    cli_nombre varchar(30) not null,
    cli_direcion varchar(30) not null,
    cli_ciudad int(3) not null,
    cli_obs varchar(30) not null,
    constraint fkcli_ciudad foreign key (cli_ciudad)
    references Ciudades(ciu_codigo)
    );
    create table Libros(
    lib_codigo int(10) auto_increment primary key,
    lib_descripcion varchar(50) not null,
    lib_cantidad int(6),
    lib_edicion int(5),
    lib_observacion varchar(50) not null
    );
    create table Libros_Autores(
    lau_libro int (10),
    lau_autor int(3),
    constraint fklau_libro foreign key(lau_libro)
    references Libros(lib_codigo),
    constraint fklau_autor foreign key(lau_autor)
    references Autores(aut_codigo)
    );

    create table Prestamos(
    pre_numero int(10) auto_increment primary key,
    pre_cliente int(3),
    pre_fecha date,
    pre_observacion varchar(50),
    constraint fkpre_cliente foreign key(pre_cliente)
    references Clientes(cli_codigo)
    );
    create table Prestamos_Libros(
    pli_libro int(10),
    pli_prestamo int(10),
    pli_estado int(1),
    pli_dias int(2),
    pli_valor float(12,2),
    pli_multa float(12,2),
    constraint fkpli_libro foreign key(pli_libro)
    references Libros(lib_codigo),
    constraint fkpli_prestamo foreign key(pli_prestamo)
    references Prestamos(pre_numero)
    );
    tengo que hacer un proyecto de mi facultad y quiero utilizar Software Libre como Java… espero contar con todo su apoyo ya que nose absolutamente nada de Java y he investigado mucho, pero no he visto pagina tan compleja como la de usted Un saludo…!!

    • Marcos Jara dijo:

      El mysql gui, es solo un cliente para acceder a la base de datos, no tendria influencia sobre la programacion en java en sí que estabmos llevando a cabo en este blog, puedes usarlo si quieres.

      Saludos.

  13. dreg101 dijo:

    No puedo crear la relación, me sale este error:
    MySQL ha dicho:

    #1072 – Key column ‘cli_ciudad’ doesn’t exist in table

    • Marcos Jara dijo:

      Hola

      Pues el mensaje lo dice claramente, no se encuentra la columna cli_ciudad en la tabla que estás queriendo acceder.

      Verifica si está y si está bien escrito el nombre, también es importante considerar las mayusculas y minusculas.

      Saludos

  14. ramirez1683 dijo:

    Hola, ¿qué pasa con los índices?
    ¿Hay que crearlos también? (aparecen en la DER)

    Saludos y muy excelente la página

  15. Gracias, ha sido muy amable en hacer este blog. Me está siendo de gran utilidad. Ojalá hayan muchos más. Guillermo Montesinos – gmov@hotmail.com

Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s