Está en la página 1de 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 cual es el campo


primario

Indica el tipo de dato

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

También podría gustarte