Creación de tablas y relaciones en MySQL y SQL yog

13
[email protected] Creación de tablas y relaciones en MySQL Dada la siguiente estructura diseñada en Access Realizaremos mediante código y por medio de asistentes la estructura en MySQL. Aunque parezca aburrido y tedioso realizar por medio de códigos estos objetos, en ocasiones no será posible utilizar asistentes y es allí donde los códigos 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 más técnica 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;

description

en este tutorial aprenderemos a crear relaciones en en Mysql a traves de códigos por medio de la consola y utilizando el asistente de SqlYog

Transcript of Creación de tablas y relaciones en MySQL y SQL yog

Page 1: Creación de tablas y relaciones en MySQL y SQL yog

[email protected]

Creación de tablas y relaciones en MySQL

Dada la siguiente estructura diseñada en Access

Realizaremos mediante código y por medio de asistentes la estructura en

MySQL.

Aunque parezca aburrido y tedioso realizar por medio de códigos estos objetos,

en ocasiones no será posible utilizar asistentes y es allí donde los códigos

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 más técnica 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;

Page 2: Creación de tablas y relaciones en MySQL y SQL yog

[email protected]

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;

Page 3: Creación de tablas y relaciones en MySQL y SQL yog

[email protected]

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;

Page 4: Creación de tablas y relaciones en MySQL y SQL yog

[email protected]

Verificamos las tablas previamente creadas dentro de nuestra base de datos

Page 5: Creación de tablas y relaciones en MySQL y SQL yog

[email protected]

Al ejecutar todas estas consultas vemos en nuestro diseñador 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 pestaña Schemma Designer

y damos clic derecho Add Talbe…

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

Add.

Page 7: Creación de tablas y relaciones en MySQL y SQL yog

[email protected]

Creando tablas por medio de asistente SQLyog

Clic derecho Create Table…

Al momento de escribir todos los parámetros de la tabla damos en Create

Table le damos un nombre y presionamos Ok.

Tamaño del campo Indica cual es el campo

primario Indica el tipo de dato

Nombre del campo

Page 8: Creación de tablas y relaciones en MySQL y SQL yog

[email protected]

Al dar Ok

Automáticamente 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.

Page 9: Creación de tablas y relaciones en MySQL y SQL yog

[email protected]

Para crear las relaciones debemos seleccionar primero las tablas que

deseamos en el combobox que aparece en la ventana

Page 10: Creación de tablas y relaciones en MySQL y SQL yog

[email protected]

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 automáticamente el pone la columna que considera debe

ser la referencia, pero nosotros podremos seleccionar la que nosotros sabemos

debe ser.

Page 11: Creación de tablas y relaciones en MySQL y SQL yog

[email protected]

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 foráneas 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 demás tablas que poseen relación en nuestro caso

nada más haría falta libros.

Page 12: Creación de tablas y relaciones en MySQL y SQL yog

[email protected]

Cuando hayamos finalizado nuestras relaciones comprobamos que todo haya

salido bien, para eso vamos a la pestaña de relaciones (Schemma Designer) y

crearemos nuestra estructura.

Page 13: Creación de tablas y relaciones en MySQL y SQL yog

[email protected]

Vemos que todo ha salido bien.

God bless