Ciclo 3: Desarrollo de Software
Sesión 12: Diseño de Bases de
Datos
Programa Ciencias de la Computación e Inteligencia Artificial
Escuela de Ciencias Exactas e Ingeniería
Universidad Sergio Arboleda
Bogotá
Contenido
• Introducción
• Breve repaso sobre bases de datos
• Bases de datos relacionales
• Ejercicio
Base de datos
Base de datos
Base de datos
Base de datos: DBMS
Modelo E/R
Representación del modelado relacional de datos.
Propuesto por Peter Chen en 1976.
Elementos:
• Entidad
• Atributos
• Relaciones
• Restricciones
Modelo E/R y modelo Relacional
Modelo E/R y modelo Relacional
Relación 1 a 1 Atributos de una entidad pasan a ser
atributos de otra.
Relación 1 a muchos Llave primaria de la entidad con cardinalidad
1 pasa a ser llave foránea en la entidad con
cardinalidad múltiple.
Relación muchos a muchos Cada llave primaria de una entidad está
presente como llave foránea en la otra
entidad.
Diagrama E/R Modelo Relacional
Diagrama E/R Mysql Workbench
Diagrama E/R Mysql Workbench
Diagrama E/R Mysql Workbench
Diagrama E/R Mysql Workbench
Diagrama E/R Mysql Workbench
Diagrama E/R Mysql Workbench
Diagrama E/R Mysql Workbench
Diagrama E/R Mysql Workbench
Como se genero la relación
entre editorial y libro, el
atributo Editorial_nombre
pasó a ser una llave foránea
automáticamente
(FK - Foreign Key).
Diagrama E/R Mysql Workbench
Ejemplo de relación
muchos a muchos.
Se puede exportar el
modelo en PNG
SQL – Creación de tablas
SQL para crear una tabla:
CREATE TABLE nombre_tabla (
nombre_columna1 datatype NULL,
nombre_columna2 datatype NOT NULL,
nombre_columna3 datatype NULL,
…
);
MySQL – Creación de tablas
MySQL para crear una tabla ejemplo:
CREATE TABLE Cliente (
cedula int(10) NOT NULL,
nombre varchar(30) NOT NULL,
apellido varchar(30) NOT NULL,
email varchar(30) NULL,
cargo varchar(15) NOT NULL
);
MySQL – Creación de tablas
MySQL para crear una tabla ejemplo:
Para definir la llave primaria.
CREATE TABLE Cliente (
cedula int(10) NOT NULL PRIMARY KEY,
nombre varchar(30) NOT NULL,
apellido varchar(30) NOT NULL,
email varchar(30) NULL,
cargo varchar(15) NOT NULL
);
MySQL – Creación de tablas
MySQL para crear una tabla ejemplo:
Para definir la llave primaria compuesta.
CREATE TABLE Cliente (
cedula int(10) NOT NULL,
nombre varchar(30) NOT NULL,
apellido varchar(30) NOT NULL,
email varchar(30) NULL,
cargo varchar(15) NOT NULL,
PRIMARY KEY (cedula, nombre, cargo)
);
MySQL – Valores por defecto y
listas de valores
MySQL para crear un valor por defecto y una lista de posibles valores:
CREATE TABLE pais (
id int(10) AUTOINCREMENT PRIMARY KEY,
nombre varchar(30) NOT NULL DEFAULT ‘’,
continente enum(‘Asia’, ‘Europa`,`Oceania`,`America`,`Antartica`)
NOT NULL DEFAULT ‘Asia’,
);
SQL – Borrar tablas
SQL para borrar una tabla:
Mucho cuidado con este comando, es complicado recuperar información
borrada.
DROP TABLE nombre_tabla
Código SQL en MySQL
Abrir un nuevo script SQL.
Ejecutar el código.
Aclaraciones código MySQL:
El punto y coma separa cada
consulta/comando.
Las tablas es MySQL deben estar
contenidas en un esquema.
Para eso se crea el esquema
restaurante.
Para trabajar sobre un esquema se
debe usar el comando USE.
Código SQL en MySQL Shell
Abrir el Shell de MySQL.
Agregar y ejecutar el código.
SQL – Adicionar Columnas
SQL para agregar una columna a una tabla que ya existe:
ALTER TABLE nombre_tabla
Add nombre_columna datatype NULL
ALTER TABLE nombre_tabla
Add nombre_columna datatype NULL,
nombre_columna2 datatype NULL
Agregar una columna:
Agregar varias columnas:
Toda columna que se agregue debe tener la propiedad NULL.
SQL – Adicionar un valor por defecto
SQL para agregar un valor por defecto a una columna que ya existe:
ALTER TABLE nombre_tabla
ALTER nombre_columna SET DEFAULT ‘valor por defecto’;
SQL – Inserción de datos (filas)
Sintaxis simplificada:
INSERT INTO nombre_tabla (nombre_atributo1, nombre_atributo2, …)
VALUES (valor_atributo1, valor_atributo2, …);
INSERT INTO nombre_tabla
VALUES (valor_atributo1, valor_atributo2, …);
Esta sintaxis se puede usar cuando los valores de los atributos se pasan en el
orden en que están en la tabla.
SQL – Inserción de datos (filas)
INSERT INTO clientes (ID, Dirección, Nombre)
VALUES (4, “Cra 90 # 1-1’, ‘Diego Vega’ );
INSERT INTO clientes
VALUES (5, ‘Peter Parker’, ‘Cra 9 # 2-2’);
ID Nombre Dirección
1 Juan Días Calle 2 # 3-4
2 Daniel Pardo Calle 5 # 7-8
3 Stephen King Calle 1 # 1-2
ID Nombre Dirección
1 Juan Días Calle 2 # 3-4
2 Daniel Pardo Calle 5 # 7-8
3 Stephen King Calle 1 # 1-2
4 Diego Vega Cra 90 # 1-1
5 Peter Parker Cra 9 # 2-2
SQL – Borrar datos
SQL para borrar una tabla:
DELETE FROM nombre_tabla;
SQL para borrar todos los registros de una tabla que cumplen con una
condición:
DELETE FROM cliente WHERE país = ‘Francia’;
SQL – Actualizar datos
SQL para actualizar un registro de una tabla:
UPDATE nombre_tabla
SET atributo1 = valor1, atributo2 = valor 2, …
WHERE atributoN = valorN;
Ejemplo: Actualizar en la base de datos de clientes, aquellos que tenían en
nacionalidad ‘Holanda’ por ‘Paises Bajos’.
UPDATE clientes
SET nacionalidad = ‘Paises Bajos’
WHERE nacionalidad = ‘Holanda’;
Ejericios
Una excelente forma de recordar las principales operaciones
del lenguaje SQL es realizar el siguiente tutorial
https://www.khanacademy.org/computing/computer-programming/sql/

Más contenido relacionado

PDF
Creación de tablas en PostgreSQL
PPTX
DOCX
Tarea 4.docx siguientes conceptos de mys
PDF
04-SQLBuenaPresentaciónyConceptos.pdf
PDF
04-SQL.pdf
PPT
Unidad 6 Lenguaje Sql
PDF
Unidad IV SQL
PDF
Guía de Sql - Lissette Torrealba
Creación de tablas en PostgreSQL
Tarea 4.docx siguientes conceptos de mys
04-SQLBuenaPresentaciónyConceptos.pdf
04-SQL.pdf
Unidad 6 Lenguaje Sql
Unidad IV SQL
Guía de Sql - Lissette Torrealba

Similar a Sesión 12 -Diseño de BD_Ciclo_3.pptx (20)

PDF
Investigacion alter, create y integridad referencial
PDF
ManualPracticoSQL.pdf
DOCX
MANUAL PRACTICO SQL SERVER para practicar lo aprendido.docx
PPSX
Lenguaje sql
PPTX
base de datos ppPPPPPPPPPPPPPPPPPPPPPPPPPPt.pptx
PDF
Manual practico SQL
PDF
Manual practicosql
PDF
Manual practico para sql ingieneria de sistemas
PDF
Manual practico SQL
PDF
Manual practico-sql
PPT
Intro sql y plsql
DOCX
Curso bases de datos es un indice de cursos.docx
PPTX
Introduccion al sql query
PPTX
Base de datos - Clase 4
PPT
Unidad v integridad relacional
PPT
Unidad v integridad relacional
PDF
MYSQL DDL DML.pdf
PPTX
SQL-BASES FUNDAMENTOS EN PROGRAMACI.pptx
PDF
EJERCICIO SENTENCIAS SQL_Completo.pdf
Investigacion alter, create y integridad referencial
ManualPracticoSQL.pdf
MANUAL PRACTICO SQL SERVER para practicar lo aprendido.docx
Lenguaje sql
base de datos ppPPPPPPPPPPPPPPPPPPPPPPPPPPt.pptx
Manual practico SQL
Manual practicosql
Manual practico para sql ingieneria de sistemas
Manual practico SQL
Manual practico-sql
Intro sql y plsql
Curso bases de datos es un indice de cursos.docx
Introduccion al sql query
Base de datos - Clase 4
Unidad v integridad relacional
Unidad v integridad relacional
MYSQL DDL DML.pdf
SQL-BASES FUNDAMENTOS EN PROGRAMACI.pptx
EJERCICIO SENTENCIAS SQL_Completo.pdf
Publicidad

Último (20)

PPTX
Diseño_Urbanistico ARTISTICA.pptxsmsndnn
PDF
Unidad 2 (operacionalización de objetivos y_o hipotesis).pdf
PDF
PPT_DesarrolloyCrecimiento_Sem-14_Sesion-14_2025-01.pdf
PPTX
funcionesestadisticas-131218074642-phpapp02_095910.pptx
PPTX
Vitaminas club de revista explicadaspptx
PPTX
Calidad presentación se diseña se gestiona
PDF
ESTADISTICA HIDROCARBURÍFERA DE BOLIVIA - ENE-JUL 2025
PDF
Estrategia de apoyo realizada por juan pablo
DOCX
Formato 2_Informe semanal 1 Abril BICU.docx
PDF
Dialnet-ComunicacionEfectivaDesdeLaGerenciaEducativa-7276113.pdf
PDF
modelo canva determinado con cuadros det
PDF
Población semita actual y composición genética semítica (2025).pdf
PDF
Ranking de potencias geopolíticas revisado al año (2025).pdf
PPT
TRABAJOS ELECTRICOS LOTO TI.pptxxxxxxzxz
PPTX
Diapos.pptxcscscscscscscscscscscscscscscsc
PPTX
ASTU_U3_EA_CLMR modelos del sistema turistico.pptx
PPTX
SEGURIDAD EN TRABAJOS DE ALTURA TI.pptxx
PDF
G1PPT.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
PDF
Proyecto Interdisciplinario alimentos saludables
PDF
Presentacion Inteligencia Emocional_Bientar y emociones.pdf
Diseño_Urbanistico ARTISTICA.pptxsmsndnn
Unidad 2 (operacionalización de objetivos y_o hipotesis).pdf
PPT_DesarrolloyCrecimiento_Sem-14_Sesion-14_2025-01.pdf
funcionesestadisticas-131218074642-phpapp02_095910.pptx
Vitaminas club de revista explicadaspptx
Calidad presentación se diseña se gestiona
ESTADISTICA HIDROCARBURÍFERA DE BOLIVIA - ENE-JUL 2025
Estrategia de apoyo realizada por juan pablo
Formato 2_Informe semanal 1 Abril BICU.docx
Dialnet-ComunicacionEfectivaDesdeLaGerenciaEducativa-7276113.pdf
modelo canva determinado con cuadros det
Población semita actual y composición genética semítica (2025).pdf
Ranking de potencias geopolíticas revisado al año (2025).pdf
TRABAJOS ELECTRICOS LOTO TI.pptxxxxxxzxz
Diapos.pptxcscscscscscscscscscscscscscscsc
ASTU_U3_EA_CLMR modelos del sistema turistico.pptx
SEGURIDAD EN TRABAJOS DE ALTURA TI.pptxx
G1PPT.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
Proyecto Interdisciplinario alimentos saludables
Presentacion Inteligencia Emocional_Bientar y emociones.pdf
Publicidad

Sesión 12 -Diseño de BD_Ciclo_3.pptx

  • 1. Ciclo 3: Desarrollo de Software Sesión 12: Diseño de Bases de Datos Programa Ciencias de la Computación e Inteligencia Artificial Escuela de Ciencias Exactas e Ingeniería Universidad Sergio Arboleda Bogotá
  • 2. Contenido • Introducción • Breve repaso sobre bases de datos • Bases de datos relacionales • Ejercicio
  • 7. Modelo E/R Representación del modelado relacional de datos. Propuesto por Peter Chen en 1976. Elementos: • Entidad • Atributos • Relaciones • Restricciones
  • 8. Modelo E/R y modelo Relacional
  • 9. Modelo E/R y modelo Relacional Relación 1 a 1 Atributos de una entidad pasan a ser atributos de otra. Relación 1 a muchos Llave primaria de la entidad con cardinalidad 1 pasa a ser llave foránea en la entidad con cardinalidad múltiple. Relación muchos a muchos Cada llave primaria de una entidad está presente como llave foránea en la otra entidad. Diagrama E/R Modelo Relacional
  • 10. Diagrama E/R Mysql Workbench
  • 11. Diagrama E/R Mysql Workbench
  • 12. Diagrama E/R Mysql Workbench
  • 13. Diagrama E/R Mysql Workbench
  • 14. Diagrama E/R Mysql Workbench
  • 15. Diagrama E/R Mysql Workbench
  • 16. Diagrama E/R Mysql Workbench
  • 17. Diagrama E/R Mysql Workbench Como se genero la relación entre editorial y libro, el atributo Editorial_nombre pasó a ser una llave foránea automáticamente (FK - Foreign Key).
  • 18. Diagrama E/R Mysql Workbench Ejemplo de relación muchos a muchos. Se puede exportar el modelo en PNG
  • 19. SQL – Creación de tablas SQL para crear una tabla: CREATE TABLE nombre_tabla ( nombre_columna1 datatype NULL, nombre_columna2 datatype NOT NULL, nombre_columna3 datatype NULL, … );
  • 20. MySQL – Creación de tablas MySQL para crear una tabla ejemplo: CREATE TABLE Cliente ( cedula int(10) NOT NULL, nombre varchar(30) NOT NULL, apellido varchar(30) NOT NULL, email varchar(30) NULL, cargo varchar(15) NOT NULL );
  • 21. MySQL – Creación de tablas MySQL para crear una tabla ejemplo: Para definir la llave primaria. CREATE TABLE Cliente ( cedula int(10) NOT NULL PRIMARY KEY, nombre varchar(30) NOT NULL, apellido varchar(30) NOT NULL, email varchar(30) NULL, cargo varchar(15) NOT NULL );
  • 22. MySQL – Creación de tablas MySQL para crear una tabla ejemplo: Para definir la llave primaria compuesta. CREATE TABLE Cliente ( cedula int(10) NOT NULL, nombre varchar(30) NOT NULL, apellido varchar(30) NOT NULL, email varchar(30) NULL, cargo varchar(15) NOT NULL, PRIMARY KEY (cedula, nombre, cargo) );
  • 23. MySQL – Valores por defecto y listas de valores MySQL para crear un valor por defecto y una lista de posibles valores: CREATE TABLE pais ( id int(10) AUTOINCREMENT PRIMARY KEY, nombre varchar(30) NOT NULL DEFAULT ‘’, continente enum(‘Asia’, ‘Europa`,`Oceania`,`America`,`Antartica`) NOT NULL DEFAULT ‘Asia’, );
  • 24. SQL – Borrar tablas SQL para borrar una tabla: Mucho cuidado con este comando, es complicado recuperar información borrada. DROP TABLE nombre_tabla
  • 25. Código SQL en MySQL Abrir un nuevo script SQL. Ejecutar el código. Aclaraciones código MySQL: El punto y coma separa cada consulta/comando. Las tablas es MySQL deben estar contenidas en un esquema. Para eso se crea el esquema restaurante. Para trabajar sobre un esquema se debe usar el comando USE.
  • 26. Código SQL en MySQL Shell Abrir el Shell de MySQL. Agregar y ejecutar el código.
  • 27. SQL – Adicionar Columnas SQL para agregar una columna a una tabla que ya existe: ALTER TABLE nombre_tabla Add nombre_columna datatype NULL ALTER TABLE nombre_tabla Add nombre_columna datatype NULL, nombre_columna2 datatype NULL Agregar una columna: Agregar varias columnas: Toda columna que se agregue debe tener la propiedad NULL.
  • 28. SQL – Adicionar un valor por defecto SQL para agregar un valor por defecto a una columna que ya existe: ALTER TABLE nombre_tabla ALTER nombre_columna SET DEFAULT ‘valor por defecto’;
  • 29. SQL – Inserción de datos (filas) Sintaxis simplificada: INSERT INTO nombre_tabla (nombre_atributo1, nombre_atributo2, …) VALUES (valor_atributo1, valor_atributo2, …); INSERT INTO nombre_tabla VALUES (valor_atributo1, valor_atributo2, …); Esta sintaxis se puede usar cuando los valores de los atributos se pasan en el orden en que están en la tabla.
  • 30. SQL – Inserción de datos (filas) INSERT INTO clientes (ID, Dirección, Nombre) VALUES (4, “Cra 90 # 1-1’, ‘Diego Vega’ ); INSERT INTO clientes VALUES (5, ‘Peter Parker’, ‘Cra 9 # 2-2’); ID Nombre Dirección 1 Juan Días Calle 2 # 3-4 2 Daniel Pardo Calle 5 # 7-8 3 Stephen King Calle 1 # 1-2 ID Nombre Dirección 1 Juan Días Calle 2 # 3-4 2 Daniel Pardo Calle 5 # 7-8 3 Stephen King Calle 1 # 1-2 4 Diego Vega Cra 90 # 1-1 5 Peter Parker Cra 9 # 2-2
  • 31. SQL – Borrar datos SQL para borrar una tabla: DELETE FROM nombre_tabla; SQL para borrar todos los registros de una tabla que cumplen con una condición: DELETE FROM cliente WHERE país = ‘Francia’;
  • 32. SQL – Actualizar datos SQL para actualizar un registro de una tabla: UPDATE nombre_tabla SET atributo1 = valor1, atributo2 = valor 2, … WHERE atributoN = valorN; Ejemplo: Actualizar en la base de datos de clientes, aquellos que tenían en nacionalidad ‘Holanda’ por ‘Paises Bajos’. UPDATE clientes SET nacionalidad = ‘Paises Bajos’ WHERE nacionalidad = ‘Holanda’;
  • 33. Ejericios Una excelente forma de recordar las principales operaciones del lenguaje SQL es realizar el siguiente tutorial https://www.khanacademy.org/computing/computer-programming/sql/