You are on page 1of 13

Creacin de tablas y relaciones en MySQL Dada la siguiente estructura diseada en Access

Realizaremos mediante cdigo y por medio de asistentes la estructura en MySQL. Aunque parezca aburrido y tedioso realizar por medio de cdigos estos objetos, en ocasiones no ser posible utilizar asistentes y es all donde los cdigos tomas su valor. Hay que tener en cuenta que para realizar este tipo de estructura primero se crean las tablas que no dependan de otra, en la forma ms tcnica es: crear las tablas cuyos campos no existan o dependan de otra tabla. En nuestro caso las tablas independientes son: AUTORES, EDITORIALES, USUARIOS y las tablas dependientes son: LIBROS (depende del autor y las editoriales), PRESTAMOUSUARIOS (depende de usuarios y libros). Usando sentencias SQL crearemos las siguientes tablas:

En primera instancia crearemos la base de datos:


CREATE DATABASE tutorialj22; USE tutorialj22;

CREATE TABLE autores( codigoautor VARCHAR(11) PRIMARY KEY NOT NULL, nombre VARCHAR(30) NOT NULL, apellido VARCHAR(45) )engine = InnoDB;

innovacionandfuturo@gmail.com

CREATE TABLE editoriales( codigoeditorial VARCHAR(11) PRIMARY KEY NOT NULL, nombre VARCHAR(35) NOT NULL ) engine = InnoDB;

CREATE TABLE usuarios( identificacionusuario VARCHAR(11) PRIMARY KEY NOT NULL, tipodocumento CHAR(3), nombre VARCHAR(35) NOT NULL, apellido VARCHAR(50), telefono VARCHAR(15), direccion VARCHAR(200), email VARCHAR(50) ) engine = InnoDB;

CREATE TABLE libros( codigolibro VARCHAR(11) PRIMARY KEY NOT NULL, codigoautor VARCHAR(11), titulo VARCHAR(150), editorial VARCHAR(11), edicion VARCHAR(8), FOREIGN KEY(editorial) REFERENCES editoriales(codigoeditorial) ON UPDATE CASCADE ON DELETE CASCADE, FOREIGN KEY(codigoautor) REFERENCES autores(codigoautor) ON UPDATE CASCADE ON DELETE CASCADE ) engine = InnoDB;

innovacionandfuturo@gmail.com

CREATE TABLE prestamousuarios( identificacionusuario VARCHAR(11), codigolibro VARCHAR(11), fechaprestamo DATE, fechadevolucion DATE, FOREIGN KEY(identificacionusuario) REFERENCES usuarios(identificacionusuario) ON UPDATE CASCADE ON DELETE CASCADE, FOREIGN KEY(codigolibro) REFERENCES libros(codigolibro) ON UPDATE CASCADE ON DELETE CASCADE ) engine = InnoDB;

innovacionandfuturo@gmail.com

Verificamos las tablas previamente creadas dentro de nuestra base de datos

innovacionandfuturo@gmail.com

Al ejecutar todas estas consultas vemos en nuestro diseador de consultas (SQLyog) que se han creado correctamente.

En SQLyog crearemos nuestro esquema grafico de nuestra base de datos para ello realizaremos los siguientes pasos: vamos a la pestaa Schemma Designer y damos clic derecho Add Talbe

Adicionamos las tablas que deseamos en nuestro caso son todas y damos Add.

innovacionandfuturo@gmail.com

innovacionandfuturo@gmail.com

Creando tablas por medio de asistente SQLyog Clic derecho Create Table

Nombre del campo Tamao del campo Indica el tipo de dato Indica cual es el campo primario

Al momento de escribir todos los parmetros de la tabla damos en Create Table le damos un nombre y presionamos Ok.

innovacionandfuturo@gmail.com

Al dar Ok

Automticamente aparecer en el bloque de contenido

As haremos con cada una de las tablas restantes y cuando ya hayamos terminado procederemos a crear las relaciones. Para esto seleccionamos la tabla que deseamos hacer las referencias y vamos al icono Relationships en nuestro caso seleccionamos la tabla prestamousuarios.

innovacionandfuturo@gmail.com

Para crear las relaciones debemos seleccionar primero las tablas que deseamos en el combobox que aparece en la ventana

innovacionandfuturo@gmail.com

Al momento de seleccionar la tabla, en el campo Source Column seleccionamos la columna que va ha ser referencia.

Ahora seleccionamos la tabla a la que hace referencia ese campo, esto lo hacemos en el mismo combobox

Al seleccionar la tabla automticamente el pone la columna que considera debe ser la referencia, pero nosotros podremos seleccionar la que nosotros sabemos debe ser.

innovacionandfuturo@gmail.com

Como en este caso la tabla prestamousuarios posee dos campos referentes entonces realizamos el mismo procedimiento para el campo del usuario.

Al momento de dar el Create nos aparecen las llaves forneas que hemos creado para esa tabla. Debemos asegurarnos de poner nombres diferentes a la referencia para que no salga error.

As lo haremos para las dems tablas que poseen relacin en nuestro caso nada ms hara falta libros.

innovacionandfuturo@gmail.com

Cuando hayamos finalizado nuestras relaciones comprobamos que todo haya salido bien, para eso vamos a la pestaa de relaciones (Schemma Designer) y crearemos nuestra estructura.

innovacionandfuturo@gmail.com

Vemos que todo ha salido bien.


God bless

innovacionandfuturo@gmail.com