SlideShare una empresa de Scribd logo
Tutorial de MySQL
Creado por: Azucena Corrales, Mariana
Elías, Fernanda Fuentes, Zaira Paez,
Brisa Ulloa y Estephania Villarreal.
¿Qué es MySQL WorkBench?
• MySQL Workbench es una aplicación para el
diseño y documentación de bases de datos,
pensada para ser usada con el sistema de
gestión de bases de datos MySQL.
¿Cómo se puede conseguir la
aplicación?
• Existen versiones para Window, Linux y Mac. Hay
que tener en cuenta que para los dos últimos
sistemas las versiones son Betas.
A continuacion dejaremos los links de
descarga:
• Windows y Linux:
http://dev.mysql.com/downloads/workbench/5.1
.html
• Mac:
http://dev.mysql.com/workbench/?p=182
¿Para que la usaremos?
• La herramienta podría usarse para realizar un
diagrama EER, y su principal función: primero
diseñar el diagrama EER y a partir de él
obtener el diagrama del esquema relacional y
también las sentencias de creación de tablas,
vistas e índices de manera automática.
• Se utilizará para representar el diagrama del
esquema relacional que acompaña a la
segunda práctica:
• Tablas y sus columnas.
• Claves primarias, las claves foráneas y a
quienes referencian.
• Tablas e índices, que, con algunas
modificaciones, podrán adaptarse a lo
solicitado en la práctica.
• Para ello debemos prescindir de los conceptos
del modelado conceptual y centrarnos en los
del modelo relacional, aunque en la
herramienta trabajemos sobre el panel 'EER
Diagrams'. Así en el modelo relacional la
vinculación entre dos tablas suele ser 1 a N y
en algún caso 1 a 1, pero nunca N a N.
Para crear el diagrama del esquema relacional necesario en la práctica,
debemos hacer doble click sobre el icono 'Add Diagram', como si lo que
creásemos fuera un nuevo diagrama ER. Esto nos conducirá al siguiente
interfaz:
¿Cómo crear una tabla relacional?
• 1.- Click sobre el incono Insertar Tabla.
• 2.- Click en la posición del lienzo en la que
queremos ver la tabla. Obtenemos lo
siguiente:
3.- Haciendo doble click sobre la tabla se
desplegará un menú en la parte inferior del
interfaz.
• En la pestaña 'Table', en el campo 'Name' se
indicará el nombre de la tabla. Los campos
'Collation' y 'Engine' son relativos a MySQL y
pueden obviarse no son necesarios cambiarlo.
¿Cómo crear los atributos de una
relación?
• De la figura anterior, desplegamos la pestaña
Columns:
• Column Name: nombre del atributo.
• Datatype: tipo de dato del atributo. Como la aplicación está
pensada para MySQL y la práctica se realizará sobre Oracle,
puede que existan tipos de datos válidos para Oracle que
no lo son para el otro gestor. En este caso se eligirá un tipo
de dato similar y se cambiará a mano en el script con las
sentencias. Se recomienda ser lo más coherente posible al
realizar esta tarea, es decir, para cada tipo de dato no
disponible en MySQL, elegir siempre el mismo tipo de dato
de sustitución.
• NN: añade la restricción NOT NULL para ese atributo.
• AI: Auto Increment. No se debe marcar ya no es una
caracterísitca de Oracle.
• Default: valor por defecto para el atributo.
• ColumnDetails.Flags: se utiliza para añadir la restricción de
clave primaria (PRIMARY KEY).
• Para añadir una nueva columna solo es necesario hacer
doble click en la fila que va a continuación de la última
añadida (señalada con un punto rojo en la imagen).
¿Cómo indicar que uno o varios
atributos son clave primaria?
• 1.- Hacer doble click sobre la tabla en cuestión.
• 2.- Abrir la pestaña 'Columns'.
• 3.- Seleccionar la columna que se desea utilizar como
clave primaria.
• 4.- Marcar la opción PRIMARY KEY.
• 5.- Si se desea definir una clave primaria sobre más de
un atributo volver al punto 3.- .
• NOTA: la aplicación no permite darle un nombre a la
restricción de clave primaria. Esto debe hacerse
manualmente sobre los scripts generados ( si así se
desea).
¿Cómo declarar las claves foráneas?
• A continuación se muestra el menú para crear los tipos de
relación (1:1, 1:N y N:M) en un ER. En la práctica se usarán
solo los 1:N y 1:N, pues son las vinculaciones que hay entre
tablas en el modelo relacional:
• El calificativo 'identificadora' indica si los
atributos que forman parte de la clave foránea
(lado N de la relación) deben formar parte
también de la clave primaria de dicha entidad,
lo que ocurre si una tabla proviene de un tipo
de entidad débil o en el caso de atributos de
tablas que provienen de tipos de relación
N:M.
• Existen, al menos, dos formas diferentes de crear
relaciones entre tablas: a través del menú de tabla o
usando el el menú antes propuesto.
• a)A través del menú de tabla (recomendado):
• 1.- Doble click sobre la entidad del lado N de la
relación.
• 2.- Crear los atributos que van a hacer la función de
clave foránea ( si no están definidos ya).
• 3.- Comprobar que existen los atributos en la tabla
referenciada por la clave foránea. Si no existen deben
crearse antes de continuar.
• 4.- En el menú de tabla , desplegar la pestaña
'Foreing Keys'. Obtendremos lo siguiente:
Tutorial de MySQL
Tutorial de MySQL
b)Usando el menú:
• 1.- Las tablas deben estar creadas.
• 2.- Se elige en el menú de la izquierda el tipo
de relación que se desea.
• 3.- Click en la tabla que representa el lado N
de la relación y luego sobre la del lado 1 (esto
puede ser al revés dependiendo del sistema
operativo).
• 4.- Los retoques que se deseen hacer sobre la
clave foránea se hacen siguiendo el apartado
4.- del punto a).
¿Cómo se gestionan los índices?
• Para crear un índice haremos doble click sobre
la tabla que contiene los atributos y, una vez
en el menú de tabla, desplegáramos la
pestaña 'Indexes'.
Tutorial de MySQL
• Index Name: nombre del índice.
• Type: en el menú desplegable elegiremos
'INDEX'.
• Column: marcamos las columnas que formaran
parte del índice.
• Order: índice ascendente o descendente.
• Index Options. Storage Type: podemos elegir
entre BTREE, RTREE, HASH o ninguno de los
anteriores.
• NOTA: la aplicación crea índices automáticamente
tanto para las claves primarias como para las
foráneas.
¿Cómo se crea una vista?
• En la segunda imagen se indica el botón sobre
el que hay que hacer click para insertar una
vista. Una vez colocada en el lienzo, si
hacemos doble click sobre ella obtenemos lo
siguiente:
Name: nombre de la vista.
DDL: sentencia SQL para la creación de la vista.
¿Cómo se insertan los datos en la
tabla?
• Doble click sobre la tabla en
cuestión.
• Desplegar la pestaña 'Inserts' del
menú de tabla.
• Click sobre 'Open Editor...'
• Añadir tantas filas como se deseen.
¿Cómo se generan las sentencias SQL?
• 1.- Elegir la opción 'Forward Engineer SQL
CREATE Script...‘
2.- Marcar las siguientes opciones (Generate INSERT si queremos
que genere los INSERT) y elegir un fichero para volcar las
sentencias (debe ser un script de SQL, es decir, con las extensión
.sqll).
• 3.- En la siguiente pantalla seleccionar 'Finish'
.
• 4.- Abrir el fichero *.sql generado y retocar las
sentencias SQL para adaptarlas al sistema de
gestión de base de datos usado en el
laboratorio de prácticas.
Ejemplo
Lo primero que vamos a hacer es crear la table DEPT. Para ello
haremos lo siguiente:
1.- Click en el icono señalado con la flecha (inserción tabla) y
luego click sobre el lienzo. Para editar las propiedades de la tabla
hacer doble click sobre la misma.
• 2.- Añadir los atributos a la tabla.
• 2.1.- En la pestaña 'Table' cambiamos 'table1'
por el nombre 'DEPT'.
• 2.2.- En la pestaña 'Columns' añadimos una a
una las columnas de la tabla:
• Nótese que hemos indicado que la columna DEPTO es
clave primaria (al indicar que es clave primaria el
checkbox de NN (Not Null) se marca
automáticamente). Como dijimos con anterioridad, la
aplicación no permite nombrar las restricciones de
clave primaria, esto ha de hacer se con posterioridad,
sobre el script de creación de tablas y a mano.
• Además, como la aplicación no contempla la
representación del tipo de dato NUMBER, hemos
elegido el INT como tipo de dato de sustitución. Es
necesario acordarse de los tipos de sustitución
utilizados para cambiarlos posteriormente en el script
generado.
Creacion de tabla EMP
• 1.- Creamos la tabla, añadimos las columnas e
indicamos la restricción de clave primaria. El
resultado es el siguiente:
2.- Para añadir la restricción de clave foránea en
la tabla EMP tenemos dos opciones:
• Opción A:
• 2.1.- Añadir una columna más a la tabla con el
nombre de DEPT.
• 2.2.- Haciendo doble click sobre la tabla EMP y
seleccionando la pestaña 'Foreing keys'.
Indicaremos el nombre de la restricción
(FK_DEPTNO), la tabla a la cual hace referencia
dicha clave (DEPT).
•
Tutorial de MySQL
2.3.- Indicamos cual es la/las columnas que forman la clave
marcando los checkboxes necesarios en Column (en este caso
DEPT) e indicaremos la columna de la tabla EMP al a cual
referenciamos (DEPTNO).
Opción B:
• 2.1.- Seleccionar en el menú de la izquierda lo que se indica
con una flecha en el dibujo y hacer click, primero sobre la
tabla EMP y luego sobre la DEPTO. El resultado es el que
sigue:
2.2.- Continuamos en el punto 2.3 de la Opción A eligiendo los
nombres adecuados para cada columna (cambiar DEPT_DEPTO
por DEPT).
El resultado, para ambos casos es el siguiente:
Normas para la entrega de practica
• El ejemplo anterior se realizó con las opciones defectivas de la herramienta, por
ejemplo con la notación gráfica conocida como 'Crow's foot' o la generación
autoática del nombre del atributo que será clave foránea. Para una mejor
presentación de la práctica, se realizán los siguientes ajustes:
1. Elegir 'Model > Object Notation > Workbench (Simplified)' para que no se incluyan
los índices en el diagrama.
2. Elegir 'Model > Relationship Notation > Connect to Columns' para que las
conexiones se representen claramente entre los atributos que las poseen.
3. Para que no aparezcan los tipos de datos en el diagrama, debe irse a 'Model >
Model Options', desactivar 'Use Global Settings' y en 'Diagrams' desactivar 'Show
Columns Types'. En una visualización posterior, el diagrama ya apareceá sin los tipos
de datos.
4. Debe entenderse que lo que aparece en el panel ''EER Diagrams' son dibujos
activos, pero que una cosa es que en un diagrama del esquema relacional no aparezca
una tabla y que la tabla exista en la base de datos, lo que la herramienta denomina
'Catalog', situado en el panel de la derecha. Por ello, al eliminar una tabla de un
diagrama con 'Botón derecho > Delete', pregunta si se desea eliminar el
correspondiente objeto de la base de datos al eliminar la figura. Puede eliminarse una
figura y mantener la tabla que representaba. Una tabla existente en 'Catalog' puede
incorporarse a un diagrama seleccionándola y arrastrándola al diagrama.
De esta forma el diagrama quedaría
semejante a:
•
Esta es la manera en la que hay que entregar el
diagrama del esquema relacional en la
práctica, en formato PDF. Obsérvese que están
diferenciadas las claves primarias (una llave),
las foráneas (rombo rojo), los atributos
normales (rombo azul) y los atributos no nulos
(rombo relleno de color azul). Asimismo está
diferenciadas las vinculaciones de clave
foránea normales (líneas discontinuas), de las
que la clave foránea forma parte de la clave
primaria (líneas continuas).
¡Muchas gracias por su atención!
Esperamos que todas sus dudas hallan quedado
claras, en caso de alguna pregunta o sugerencia
contactarnos en el correo:
estef_11@live.com.mx

Más contenido relacionado

PPTX
PPTX
Sql DML Lenguaje de manipulación de datos
PPTX
Componentes y Librerías - Tópicos avanzados de programación.
DOCX
CUADRO COMPARATIVO ENTRE MODELO OSI Y TCP/IP
PDF
Consultas básicas en sql server
DOCX
Control de concurrencias investigación
PPTX
Taller de Base de Datos - Unidad 7 Conectividad
PPTX
Tópicos Avanzados de Programación - Unidad 4 Acceso a datos
Sql DML Lenguaje de manipulación de datos
Componentes y Librerías - Tópicos avanzados de programación.
CUADRO COMPARATIVO ENTRE MODELO OSI Y TCP/IP
Consultas básicas en sql server
Control de concurrencias investigación
Taller de Base de Datos - Unidad 7 Conectividad
Tópicos Avanzados de Programación - Unidad 4 Acceso a datos

La actualidad más candente (20)

PDF
Creación de VLANs (subredes) desde Cisco Packet Tracer Student
PPTX
Programación 3: árboles binarios y ordenados
DOCX
proyecto conexion netbeans con Mysql
PPTX
Diagrama de Componentes
PPTX
Cisco packet tracer
PPTX
Fundamentos de Telecomunicaciones - Unidad 5 Multiplexación
PPT
Código intermedio
PPTX
Estructura de Datos en Java
PDF
Control de eventos en gui
PPTX
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
PPTX
Tipos de usuarios de base de datos diapositivas
PDF
Comandos y funciones sql postgres
PPTX
DOCX
Requerimientos Funcionales y No Funcionales
PPTX
Calculo relacional de base de datos
PDF
Examen Arquitectura de Computadoras
PPTX
Métodos para la detección y corrección de errores
DOCX
Casos De Uso
PPTX
Sistema Operativo Distribuido
Creación de VLANs (subredes) desde Cisco Packet Tracer Student
Programación 3: árboles binarios y ordenados
proyecto conexion netbeans con Mysql
Diagrama de Componentes
Cisco packet tracer
Fundamentos de Telecomunicaciones - Unidad 5 Multiplexación
Código intermedio
Estructura de Datos en Java
Control de eventos en gui
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tipos de usuarios de base de datos diapositivas
Comandos y funciones sql postgres
Requerimientos Funcionales y No Funcionales
Calculo relacional de base de datos
Examen Arquitectura de Computadoras
Métodos para la detección y corrección de errores
Casos De Uso
Sistema Operativo Distribuido
Publicidad

Destacado (7)

PPT
Java y Bases de Datos
PDF
Curso basico de base de datos con java
PDF
Desarrollar aplicación completa en Java con conexión base de datos MySql
DOCX
EJEMPLOS DESARROLLADOS
PDF
Aplicación de escritorio con java
Java y Bases de Datos
Curso basico de base de datos con java
Desarrollar aplicación completa en Java con conexión base de datos MySql
EJEMPLOS DESARROLLADOS
Aplicación de escritorio con java
Publicidad

Similar a Tutorial de MySQL (20)

PPTX
Tutorial de my sql workbench
PPTX
TUTORIAL DE MySQL WORKBENCH
PPTX
Base de Datos
PPTX
Tutorial de MySQL Workbench
PPTX
Tutorial de my sql workbench
PDF
Consultas básicas en SQL Server
PDF
TODO SOBRE BASE DE DATOS CON MICROSOFT SQL SERVER
PPTX
PRESENTACION DE ANALISIS DE DATOS
PPT
PPT
Colegio de estudios tecnologicos
PPSX
Bases de datos relacionales parte II
PPT
SQL-DDL
PPTX
Diseño de Base de DatosFin.pptx
PDF
Relacion entre tablas
PPT
DiseñO LóGico De Bases De Datos Para El Modelo Relacional
PDF
Práctica de Bases de Datos con MySQL (diseño, desarrollo y uso)
PPT
Modelo relacional
PPTX
Base de datos.
PPT
relaciones de tablas
PPSX
Presentación de DBMS ACCESS y su uso.ppsx
Tutorial de my sql workbench
TUTORIAL DE MySQL WORKBENCH
Base de Datos
Tutorial de MySQL Workbench
Tutorial de my sql workbench
Consultas básicas en SQL Server
TODO SOBRE BASE DE DATOS CON MICROSOFT SQL SERVER
PRESENTACION DE ANALISIS DE DATOS
Colegio de estudios tecnologicos
Bases de datos relacionales parte II
SQL-DDL
Diseño de Base de DatosFin.pptx
Relacion entre tablas
DiseñO LóGico De Bases De Datos Para El Modelo Relacional
Práctica de Bases de Datos con MySQL (diseño, desarrollo y uso)
Modelo relacional
Base de datos.
relaciones de tablas
Presentación de DBMS ACCESS y su uso.ppsx

Último (20)

PPTX
caso clínico iam clinica y semiología l3.pptx
PDF
SESION 12 INMUNIZACIONES - CADENA DE FRÍO- SALUD FAMILIAR - PUEBLOS INDIGENAS...
PDF
TRAUMA_Y_RECUPERACION consecuencias de la violencia JUDITH HERMAN
PDF
Escuela de Negocios - Robert kiyosaki Ccesa007.pdf
DOCX
UNIDAD DE APRENDIZAJE 5 AGOSTO tradiciones
DOCX
V UNIDAD - SEGUNDO GRADO. del mes de agosto
PDF
5°-UNIDAD 5 - 2025.pdf aprendizaje 5tooo
PDF
GUIA DE: CANVA + INTELIGENCIA ARTIFICIAL
PDF
biología es un libro sobre casi todo el tema de biología
PDF
1. Intrdoduccion y criterios de seleccion de Farm 2024.pdf
DOCX
III Ciclo _ Plan Anual 2025.docx PARA ESTUDIANTES DE PRIMARIA
PDF
Conecta con la Motivacion - Brian Tracy Ccesa007.pdf
DOCX
Informe_practica pre Final.docxddadssasdddddddddddddddddddddddddddddddddddddddd
PDF
OK OK UNIDAD DE APRENDIZAJE 5TO Y 6TO CORRESPONDIENTE AL MES DE AGOSTO 2025.pdf
PDF
Integrando la Inteligencia Artificial Generativa (IAG) en el Aula
DOCX
V UNIDAD - PRIMER GRADO. del mes de agosto
PDF
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf
PDF
Educación Artística y Desarrollo Humano - Howard Gardner Ccesa007.pdf
PDF
TOMO II - LITERATURA.pd plusenmas ultras
PDF
Atencion prenatal. Ginecologia y obsetricia
caso clínico iam clinica y semiología l3.pptx
SESION 12 INMUNIZACIONES - CADENA DE FRÍO- SALUD FAMILIAR - PUEBLOS INDIGENAS...
TRAUMA_Y_RECUPERACION consecuencias de la violencia JUDITH HERMAN
Escuela de Negocios - Robert kiyosaki Ccesa007.pdf
UNIDAD DE APRENDIZAJE 5 AGOSTO tradiciones
V UNIDAD - SEGUNDO GRADO. del mes de agosto
5°-UNIDAD 5 - 2025.pdf aprendizaje 5tooo
GUIA DE: CANVA + INTELIGENCIA ARTIFICIAL
biología es un libro sobre casi todo el tema de biología
1. Intrdoduccion y criterios de seleccion de Farm 2024.pdf
III Ciclo _ Plan Anual 2025.docx PARA ESTUDIANTES DE PRIMARIA
Conecta con la Motivacion - Brian Tracy Ccesa007.pdf
Informe_practica pre Final.docxddadssasdddddddddddddddddddddddddddddddddddddddd
OK OK UNIDAD DE APRENDIZAJE 5TO Y 6TO CORRESPONDIENTE AL MES DE AGOSTO 2025.pdf
Integrando la Inteligencia Artificial Generativa (IAG) en el Aula
V UNIDAD - PRIMER GRADO. del mes de agosto
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf
Educación Artística y Desarrollo Humano - Howard Gardner Ccesa007.pdf
TOMO II - LITERATURA.pd plusenmas ultras
Atencion prenatal. Ginecologia y obsetricia

Tutorial de MySQL

  • 1. Tutorial de MySQL Creado por: Azucena Corrales, Mariana Elías, Fernanda Fuentes, Zaira Paez, Brisa Ulloa y Estephania Villarreal.
  • 2. ¿Qué es MySQL WorkBench? • MySQL Workbench es una aplicación para el diseño y documentación de bases de datos, pensada para ser usada con el sistema de gestión de bases de datos MySQL.
  • 3. ¿Cómo se puede conseguir la aplicación? • Existen versiones para Window, Linux y Mac. Hay que tener en cuenta que para los dos últimos sistemas las versiones son Betas. A continuacion dejaremos los links de descarga: • Windows y Linux: http://dev.mysql.com/downloads/workbench/5.1 .html • Mac: http://dev.mysql.com/workbench/?p=182
  • 4. ¿Para que la usaremos? • La herramienta podría usarse para realizar un diagrama EER, y su principal función: primero diseñar el diagrama EER y a partir de él obtener el diagrama del esquema relacional y también las sentencias de creación de tablas, vistas e índices de manera automática.
  • 5. • Se utilizará para representar el diagrama del esquema relacional que acompaña a la segunda práctica: • Tablas y sus columnas. • Claves primarias, las claves foráneas y a quienes referencian. • Tablas e índices, que, con algunas modificaciones, podrán adaptarse a lo solicitado en la práctica.
  • 6. • Para ello debemos prescindir de los conceptos del modelado conceptual y centrarnos en los del modelo relacional, aunque en la herramienta trabajemos sobre el panel 'EER Diagrams'. Así en el modelo relacional la vinculación entre dos tablas suele ser 1 a N y en algún caso 1 a 1, pero nunca N a N.
  • 7. Para crear el diagrama del esquema relacional necesario en la práctica, debemos hacer doble click sobre el icono 'Add Diagram', como si lo que creásemos fuera un nuevo diagrama ER. Esto nos conducirá al siguiente interfaz:
  • 8. ¿Cómo crear una tabla relacional? • 1.- Click sobre el incono Insertar Tabla. • 2.- Click en la posición del lienzo en la que queremos ver la tabla. Obtenemos lo siguiente:
  • 9. 3.- Haciendo doble click sobre la tabla se desplegará un menú en la parte inferior del interfaz.
  • 10. • En la pestaña 'Table', en el campo 'Name' se indicará el nombre de la tabla. Los campos 'Collation' y 'Engine' son relativos a MySQL y pueden obviarse no son necesarios cambiarlo.
  • 11. ¿Cómo crear los atributos de una relación? • De la figura anterior, desplegamos la pestaña Columns:
  • 12. • Column Name: nombre del atributo. • Datatype: tipo de dato del atributo. Como la aplicación está pensada para MySQL y la práctica se realizará sobre Oracle, puede que existan tipos de datos válidos para Oracle que no lo son para el otro gestor. En este caso se eligirá un tipo de dato similar y se cambiará a mano en el script con las sentencias. Se recomienda ser lo más coherente posible al realizar esta tarea, es decir, para cada tipo de dato no disponible en MySQL, elegir siempre el mismo tipo de dato de sustitución. • NN: añade la restricción NOT NULL para ese atributo. • AI: Auto Increment. No se debe marcar ya no es una caracterísitca de Oracle. • Default: valor por defecto para el atributo. • ColumnDetails.Flags: se utiliza para añadir la restricción de clave primaria (PRIMARY KEY). • Para añadir una nueva columna solo es necesario hacer doble click en la fila que va a continuación de la última añadida (señalada con un punto rojo en la imagen).
  • 13. ¿Cómo indicar que uno o varios atributos son clave primaria? • 1.- Hacer doble click sobre la tabla en cuestión. • 2.- Abrir la pestaña 'Columns'. • 3.- Seleccionar la columna que se desea utilizar como clave primaria. • 4.- Marcar la opción PRIMARY KEY. • 5.- Si se desea definir una clave primaria sobre más de un atributo volver al punto 3.- . • NOTA: la aplicación no permite darle un nombre a la restricción de clave primaria. Esto debe hacerse manualmente sobre los scripts generados ( si así se desea).
  • 14. ¿Cómo declarar las claves foráneas? • A continuación se muestra el menú para crear los tipos de relación (1:1, 1:N y N:M) en un ER. En la práctica se usarán solo los 1:N y 1:N, pues son las vinculaciones que hay entre tablas en el modelo relacional:
  • 15. • El calificativo 'identificadora' indica si los atributos que forman parte de la clave foránea (lado N de la relación) deben formar parte también de la clave primaria de dicha entidad, lo que ocurre si una tabla proviene de un tipo de entidad débil o en el caso de atributos de tablas que provienen de tipos de relación N:M.
  • 16. • Existen, al menos, dos formas diferentes de crear relaciones entre tablas: a través del menú de tabla o usando el el menú antes propuesto. • a)A través del menú de tabla (recomendado): • 1.- Doble click sobre la entidad del lado N de la relación. • 2.- Crear los atributos que van a hacer la función de clave foránea ( si no están definidos ya). • 3.- Comprobar que existen los atributos en la tabla referenciada por la clave foránea. Si no existen deben crearse antes de continuar. • 4.- En el menú de tabla , desplegar la pestaña 'Foreing Keys'. Obtendremos lo siguiente:
  • 19. b)Usando el menú: • 1.- Las tablas deben estar creadas. • 2.- Se elige en el menú de la izquierda el tipo de relación que se desea. • 3.- Click en la tabla que representa el lado N de la relación y luego sobre la del lado 1 (esto puede ser al revés dependiendo del sistema operativo). • 4.- Los retoques que se deseen hacer sobre la clave foránea se hacen siguiendo el apartado 4.- del punto a).
  • 20. ¿Cómo se gestionan los índices? • Para crear un índice haremos doble click sobre la tabla que contiene los atributos y, una vez en el menú de tabla, desplegáramos la pestaña 'Indexes'.
  • 22. • Index Name: nombre del índice. • Type: en el menú desplegable elegiremos 'INDEX'. • Column: marcamos las columnas que formaran parte del índice. • Order: índice ascendente o descendente. • Index Options. Storage Type: podemos elegir entre BTREE, RTREE, HASH o ninguno de los anteriores. • NOTA: la aplicación crea índices automáticamente tanto para las claves primarias como para las foráneas.
  • 23. ¿Cómo se crea una vista? • En la segunda imagen se indica el botón sobre el que hay que hacer click para insertar una vista. Una vez colocada en el lienzo, si hacemos doble click sobre ella obtenemos lo siguiente:
  • 24. Name: nombre de la vista. DDL: sentencia SQL para la creación de la vista.
  • 25. ¿Cómo se insertan los datos en la tabla? • Doble click sobre la tabla en cuestión. • Desplegar la pestaña 'Inserts' del menú de tabla. • Click sobre 'Open Editor...' • Añadir tantas filas como se deseen.
  • 26. ¿Cómo se generan las sentencias SQL? • 1.- Elegir la opción 'Forward Engineer SQL CREATE Script...‘
  • 27. 2.- Marcar las siguientes opciones (Generate INSERT si queremos que genere los INSERT) y elegir un fichero para volcar las sentencias (debe ser un script de SQL, es decir, con las extensión .sqll).
  • 28. • 3.- En la siguiente pantalla seleccionar 'Finish' . • 4.- Abrir el fichero *.sql generado y retocar las sentencias SQL para adaptarlas al sistema de gestión de base de datos usado en el laboratorio de prácticas.
  • 30. Lo primero que vamos a hacer es crear la table DEPT. Para ello haremos lo siguiente: 1.- Click en el icono señalado con la flecha (inserción tabla) y luego click sobre el lienzo. Para editar las propiedades de la tabla hacer doble click sobre la misma.
  • 31. • 2.- Añadir los atributos a la tabla. • 2.1.- En la pestaña 'Table' cambiamos 'table1' por el nombre 'DEPT'. • 2.2.- En la pestaña 'Columns' añadimos una a una las columnas de la tabla:
  • 32. • Nótese que hemos indicado que la columna DEPTO es clave primaria (al indicar que es clave primaria el checkbox de NN (Not Null) se marca automáticamente). Como dijimos con anterioridad, la aplicación no permite nombrar las restricciones de clave primaria, esto ha de hacer se con posterioridad, sobre el script de creación de tablas y a mano. • Además, como la aplicación no contempla la representación del tipo de dato NUMBER, hemos elegido el INT como tipo de dato de sustitución. Es necesario acordarse de los tipos de sustitución utilizados para cambiarlos posteriormente en el script generado.
  • 33. Creacion de tabla EMP • 1.- Creamos la tabla, añadimos las columnas e indicamos la restricción de clave primaria. El resultado es el siguiente:
  • 34. 2.- Para añadir la restricción de clave foránea en la tabla EMP tenemos dos opciones: • Opción A: • 2.1.- Añadir una columna más a la tabla con el nombre de DEPT. • 2.2.- Haciendo doble click sobre la tabla EMP y seleccionando la pestaña 'Foreing keys'. Indicaremos el nombre de la restricción (FK_DEPTNO), la tabla a la cual hace referencia dicha clave (DEPT). •
  • 36. 2.3.- Indicamos cual es la/las columnas que forman la clave marcando los checkboxes necesarios en Column (en este caso DEPT) e indicaremos la columna de la tabla EMP al a cual referenciamos (DEPTNO).
  • 37. Opción B: • 2.1.- Seleccionar en el menú de la izquierda lo que se indica con una flecha en el dibujo y hacer click, primero sobre la tabla EMP y luego sobre la DEPTO. El resultado es el que sigue:
  • 38. 2.2.- Continuamos en el punto 2.3 de la Opción A eligiendo los nombres adecuados para cada columna (cambiar DEPT_DEPTO por DEPT). El resultado, para ambos casos es el siguiente:
  • 39. Normas para la entrega de practica • El ejemplo anterior se realizó con las opciones defectivas de la herramienta, por ejemplo con la notación gráfica conocida como 'Crow's foot' o la generación autoática del nombre del atributo que será clave foránea. Para una mejor presentación de la práctica, se realizán los siguientes ajustes: 1. Elegir 'Model > Object Notation > Workbench (Simplified)' para que no se incluyan los índices en el diagrama. 2. Elegir 'Model > Relationship Notation > Connect to Columns' para que las conexiones se representen claramente entre los atributos que las poseen. 3. Para que no aparezcan los tipos de datos en el diagrama, debe irse a 'Model > Model Options', desactivar 'Use Global Settings' y en 'Diagrams' desactivar 'Show Columns Types'. En una visualización posterior, el diagrama ya apareceá sin los tipos de datos. 4. Debe entenderse que lo que aparece en el panel ''EER Diagrams' son dibujos activos, pero que una cosa es que en un diagrama del esquema relacional no aparezca una tabla y que la tabla exista en la base de datos, lo que la herramienta denomina 'Catalog', situado en el panel de la derecha. Por ello, al eliminar una tabla de un diagrama con 'Botón derecho > Delete', pregunta si se desea eliminar el correspondiente objeto de la base de datos al eliminar la figura. Puede eliminarse una figura y mantener la tabla que representaba. Una tabla existente en 'Catalog' puede incorporarse a un diagrama seleccionándola y arrastrándola al diagrama.
  • 40. De esta forma el diagrama quedaría semejante a:
  • 41. • Esta es la manera en la que hay que entregar el diagrama del esquema relacional en la práctica, en formato PDF. Obsérvese que están diferenciadas las claves primarias (una llave), las foráneas (rombo rojo), los atributos normales (rombo azul) y los atributos no nulos (rombo relleno de color azul). Asimismo está diferenciadas las vinculaciones de clave foránea normales (líneas discontinuas), de las que la clave foránea forma parte de la clave primaria (líneas continuas).
  • 42. ¡Muchas gracias por su atención! Esperamos que todas sus dudas hallan quedado claras, en caso de alguna pregunta o sugerencia contactarnos en el correo: estef_11@live.com.mx