Anda di halaman 1dari 11

Creacin de Bases de Datos, tablas y

Relaciones en MySQL
Dada la siguiente estructura diseada en MySQL
Workbench 6.1 CE

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;

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;

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;

Verificamos las tablas previamente creadas dentro de nuestra base de datos

Usando el Asistente Xampp


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

Damos el nombre de
la base de datos

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.

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

Seleccionamos tambin el tipo de eliminacin y actualizacin.

Lo mismo haremos para el campo editorial y damos Guardar.

Haremos el mismo procedimiento con la tabla prestamousuario

Con esto ya habremos creado nuestra estructura planteada en el Modelo ER.

Anda mungkin juga menyukai