Sie sind auf Seite 1von 11

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

Usando el Asistente WampServer


Esta es la presentacin de WampServer ejecutado desde un servidor local
(localhost)

innovacionandfuturo@gmail.com

Damos el nombre de
la base de datos

innovacionandfuturo@gmail.com

Tamao del campo


Tipo de dato
Nombre del campo

Seleccionamos la llave
primaria

En caso de tener
un campo de
autoincremento
Seleccionamos el motor
de almacenamiento

Para el caso de libros y prestamousuario los campos que hacen referencia a


otra tabla le pondremos el ndice como PRIMARY para poder hacer las
relaciones posteriormente.

innovacionandfuturo@gmail.com

innovacionandfuturo@gmail.com

Luego de tener todas las tablas creadas procedemos a realizar las relaciones.
Para eso seleccionamos en el panel izquierdo la tabla libros y en vista de
relaciones

Se nos abre la ventana de Relaciones y lo que debemos hacer es seleccionar


el campo al que deseamos referenciar, para esto desplegamos el combobox

En nuestro caso deseamos referenciar el cdigo del autor que est en la tabla
autores

innovacionandfuturo@gmail.com

Seleccionamos tambin el tipo de eliminacin y actualizacin.

Lo mismo haremos para el campo editorial y damos Guardar.

innovacionandfuturo@gmail.com

Haremos el mismo procedimiento con la tabla prestamousuario

Hemos creado nuestra estructura planteada

God blees

innovacionandfuturo@gmail.com

Das könnte Ihnen auch gefallen