TR1 Database
TR1 Database
TR1 Database
Curso
DATABASE FOUNDATION (ORACLE)
TEMA: MODELO FÍSICO DE UNA BASE DE DATOS RELACIONAL
Caso practico
Le contratan para hacer una Base Datos que permita apoyar la gestión de un sistema de
ventas. La empresa necesita llevar un control de proveedores, clientes, productos y
ventas. Un proveedor tiene un RUT, nombre, dirección, teléfono y página web. Un cliente
también tiene RUT, nombre, dirección, pero puede tener varios teléfonos de contacto. La
dirección se entiende por calle, número, comuna y ciudad. Un producto tiene un id único,
nombre, precio actual, stock y nombre del proveedor. Además, se organizan en categorías,
y cada producto va sólo en una categoría. Una categoría tiene id, nombre y descripción.
Por razones de contabilidad, se debe registrar la información de cada venta con un id,
fecha, cliente, descuento y monto final. Además, se debe guardar el precio al momento de
la venta, la cantidad vendida y el monto total por el producto.
Realizar:
1. Modelo Conceptual
2. Modelo Lógico
3. Modelo Físico, utilizando Oracle SQL DeveloperData Modeler.
4. Un script de la Base de Datos utilizando el lenguaje DDL y DML para poder crear los
Objetos de la BD y realizar consultas, inserción, modificación, actualización y
eliminación de datos.
Primero identificamos los nombres de las tablas.
• Proveedor
• Producto
• Cliente
• Dirección del proveedor (subtabla)
• Categoría del producto (subtabla)
• Dirección del cliente (subtabla)
Empezamos con el contenido de la TABLA PROVEEDOR, usaremos el RUT como UID Primario, dato lógico y de origen
entero, continuamos con el nombre de origen VARCHAR de tamaño 50, teléfono dato lógico de origen entero y pagina
web de dato lógico de origen VARCHAR de tamaño 250, todos los datos son de carácter obligatorio.
TABLA PRODUCTO, ID como UID Primario es dato lógico de origen entero, Nombre dato lógico de origen VARCHAR de
tamaño 100, Precio tipo de dato lógico de origen FLOAT de precisión 5, Stock tipo de dato lógico de origen entero,
Nombre_del_Proveedor tipo de dato lógico de origen VARCHAR de tamaño 50, todos son de carácter obligatorio.
TABLA CLIENTE, RUT como UID Primario tipo de dato lógico de origen entero, NOMBRE tipo de dato lógico de origen
VARCHAR de tamaño 50, TELÉFONO tipo de dato lógico origen entero, todos son de carácter obligatorio.
TABLA DIRECCIÓN CALLE tipo de dato lógico de origen VARCHAR de tamaño 100, NUMERO tipo de dato lógico de
origen entero, COMUNA tipo de dato lógico de origen VARCHAR de tamaño 120, CIUDAD tipo de dato lógico de origen
VARCHAR de tamaño 1000 y todos son de carácter obligatorio.
TABLA CATEGORÍA, ID tipo de dato lógico de origen entero, NOMBRE tipo de dato lógico de origen VARCHAR de
tamaño 100 y DESCRIPCIÓN tipo de dato lógico de origen CLOB. ID y nombre son atributos obligatorios.
TABLA DE DIRECCIÓN DEL CLIENTE, CALLE tipo de dato lógico de origen VARCHAR de tamaño 100, NUMERO tipo de
dato lógico de origen entero, COMUNA tipo de dato lógico de origen VARCHAR de tamaño 120 y CIUDAD tipo de dato
lógico de origen VARCHAR de tamaño 1000.
Deberíamos tener las tablas de esta manera.
Le damos un clic a la tabla de dirección vamos a general, buscamos la parte donde esta supertipo y buscamos la tabla
que queremos que sea principal. Y le damos a aceptar.
Y así con las demás tablas.
Después las relacionamos con la segunda flecha verde que esta en la parte superior.
Después para que se realice una ingeniería le damos al botón azul de dos flechas que está en la parte superior
Nos aparecerá una ventana, en la parte inferior dice realizar ingeniería le damos clic.
Y ya estaría realizado la ingeniería como lo muestro a continuación.
Para generar un DDL solo le damos un clic a este icono que se encuentra en la parte superior.
Este es DDL para que lo copien, este DDL lo tenemos que copiar en el programa sqldeveloper.
Después de generar el DDL lo copiamos en una hoja de trabajo en sqldeveloper, Mas abajo se encuentra como lo
hice.
WHERE nombre='fer';
WHERE nombre='fabrizio';
Preguntas Guía
Un modelo lógico es una representación precisa, un modelo conceptual es una muestra imprecisa
de la realidad y un modelo físico es una representación determinada(real).
Un modelo conceptual considera la estructura de los datos, centrándose en los conceptos y sus
relaciones, el modelo físico tiene en cuenta la estructura de los datos, las relaciones entre ellos y
las restricciones de la base de datos y un modelo lógico tiene en cuenta la estructura de los datos
y las relaciones entre ellos.
Los modelos lógicos se utilizan para representar la estructura de datos, se utiliza un modelo
conceptual para representar los datos del problema a resolver y un modelo físico se utiliza para
representar la estructura de los datos en una base de datos.
Es una base de datos que almacena datos en tablas y utiliza claves para crear relaciones entre
ellos. Las tablas de bases de datos relacionales contienen columnas y filas de datos almacenados
en celdas. Las claves se utilizan para establecer relaciones entre tablas.
Cada una de estas formas tiene sus propias reglas. Cuando una base de datos alcanza cierto nivel,
se considera normalizada a esa forma de normalización.
4. ¿Cuáles son las características de cada una de las claves que existen en una entidad de BD?
Entidad: Objeto exclusivo único en el mundo real que se está controlando. Algunos ejemplos de
entidad son una sola persona, un solo producto o una sola organización.
Tipo de entidad: Persona, organización, tipo de objeto o concepto sobre los que se almacena
información. Describe el tipo de la información que se está controlando. Normalmente un tipo de
entidad corresponde a una o varias tablas relacionadas en la base de datos.
Atributo: Característica o rasgo de un tipo de entidad que describe la entidad, por ejemplo, el tipo
de entidad Person (Persona) tiene el atributo Date of Birth (Fecha de nacimiento).
Las sentencias SQL se dividen en dos categorías; Lenguaje de definición de datos; data definition
language (DDL) y Lenguaje de manipulación de datos; data manipulation language (DML).
Lenguaje de definición de datos (DDL) Las sentencias DDL se utilizan para crear y modificar la
estructura de las tablas, así como otros objetos de la base de datos.
TRUNCATE. elimina todos los registros de la tabla, incluyendo todos los espacios asignados a los
registros.
Algunos ejemplos:
DELETE. elimina todos los registros de la tabla; no borra los espacios asignados a los registros.