Vous êtes sur la page 1sur 15

04 DE JULIO DE 2014

PROYECTO
FINAL
BASE DE DATOS II
DOCENTE: ING ROLANDO GONZALES

INTEGRANTES:
TITO FLORES VICENTE
JOSELO ABAPINTA DIEGO
DELFOR SEGUNDO VITINGAY

GRUPO - DE BASE DE DATOS II 1

UNIBETH
ndice
1.-Antecedentes ........................................................................................................................ 2
Tienda de catlogos Virtual ............................................................................................. 2
2.-Marco Terico ....................................................................................................................... 3
DDL - Lenguaje de Definicin de Datos ................................................................................ 3
Create DataBase ............................................................................................................. 4
Create Table .................................................................................................................. 4
DML - Lenguaje de Manipulacin de Datos ............................................................................ 4
INSERT ........................................................................................................................... 4
UPDATE ......................................................................................................................... 4
DELETE .......................................................................................................................... 5
3.-Desarrollo ............................................................................................................................. 6
Diagrama De La Base de Datos ............................................................................................. 6
Modelo Lgico de la Base de Dato9
Creacin de la Base De Datos y Tablas .................................................................................. 7
ORACLE7
SQL Server...10
My Sql......12
4.-Conclucion ......................................................................................................................... 14
5.-Recomendacion ................................................................................................................. 14









GRUPO - DE BASE DE DATOS II 2

UNIBETH

I.- ANTECEDENTES
Tienda Rosario dedicada a vender prendas de vestir, trajes, accesorios para damas y
Varones. Quiere tener un negocio de su tienda virtual donde puedan hacer ofertas sus
productos.
Para ello requiere un sistema de gestin web que tenga las siguientes funcionalidades:
Dado que se trabajara con arquitectura cliente / servidor, el software resultante del proyecto
estar ubicado en un servidor perteneciente a la tienda, al cual se acceder va internet. Cada
uno de los usuarios tendr ordenadores conectados a internet y el software necesario para
poder desarrollar su actividad ser un navegador. Resumiendo, el software resultante del
proyecto, permitir el mantenimiento de los datos- informes pedidos por las empresas
anunciadoras y facturacin correspondiente,-la gestin de los pedidos que realicen los
distintos usuarios de la herramienta y, finalmente, el acceso de todo usuario validado en el
aplicativo mediante conexin remota o propia.


















GRUPO - DE BASE DE DATOS II 3

UNIBETH
II.- MARCO TEORICO

DISEO FISICO DE LA BASE DE DATOS
Es el proceso de producir una descripcin de la implementacin de la base de datos en el
almacenamiento secundario.
Describe las relaciones base, la organizacin de los archivos y los ndices utilizados para
conseguir un acceso eficiente a los datos y cualquier restriccin de integridad y medidas de
seguridad implementadas.
DDL - LENGUAJE DE DEFINICIN DE DATOS
Es un lenguaje proporcionado por el sistema de gestin de base de datos que permite a los
usuarios de la misma llevar a cabo las tareas de definicin de las estructuras que
almacenarn los datos as como de los procedimientos o funciones que permitan consultarlos.
El DDL es la parte del SQL que ms vara de un sistema a otro ya que esa rea tiene que ver
con cmo se organizan internamente los datos y eso, cada sistema lo hace de una manera u
otra.

- CREATE DATABASE
El comando CREATE DATABASE le permite crear una nueva base de datos externa (archivos
db .4db y .4dd) en una ubicacin especfica. Ej.:
CREATE DATABASE tienda_rosario

Despus de la ejecucin exitosa del comando CREATE DATABASE, la nueva base de datos
creada no se convierte automticamente en la base actual. Para hacer esto, debe declararla
explcitamente como la base actual con el comando USE.
use db_tienda_rosario








GRUPO - DE BASE DE DATOS II 4

UNIBETH

- CREATE TABLE
Con el siguiente comando CREATE TABLE se da lugar a la creacin de una tabla inicialmente
vaca, en la base de datos actual. La tabla ser poseda por el usuario que introduce la
sentencia. Ej.:
create table persona
(
id_persona int not null identity primary key,
nombre varchar(50) not null,
apellido varchar(50) not null,
sexo char(1) not null check(sexo in('M','F')),
telefono varchar(8) not null,
edad int not null,
ocupacion varchar(50) null,
fecha_nacimiento datetime

)
go


DML - LENGUAJE DE MANIPULACIN DE DATOS
Es un idioma proporcionado por los sistemas gestores de bases de datos que permite a los
usuarios de la misma llevar a cabo las tareas de consulta o modificacin de los datos
contenidos en las Bases de Datos del Sistema Gestor de Bases de Datos.
El lenguaje de manipulacin de datos ms popular hoy da es SQL, usado para recuperar y
manipular datos en una base de datos relacional.
- INSERT INTO
Una sentencia INSERT INTO de SQL agrega uno o ms registros a una (y slo una) tabla en
una base de datos relacional. Ej.: A continuacin se inserta datos a la tabla ya creada Cliente.
INSERT INTO CATEGORIA VALUES ('1','CAMISAS')

- UPDATE
Una sentencia UPDATE de SQL es utilizada para modificar los valores de un conjunto de
registros existentes en una tabla. Ej.:
UPDATE CATEGORIA SET NOMBRE = 'PANTALONES' WHERE ID_CATEGORIA = 1


GRUPO - DE BASE DE DATOS II 5

UNIBETH

- DELETE
Una sentencia DELETE de SQL borra uno o ms registros existentes en una tabla. Ej.: A
continuacin eliminaremos un cliente existente en la base de datos actual.
DELETE FROM CATEGORIA WHERE ID_CATEGORIA = 1























III.- DESARROLLO

GRUPO - DE BASE DE DATOS II 6

UNIBETH

DIAGRAMA DE LA BASE DE DATOS









MODELO LOGICO DE LA BASE DE DATOS
Persona (id_persona, nombre, apellido, sexo, telfono, direccin, edad,

GRUPO - DE BASE DE DATOS II 7

UNIBETH
PK
Ocupacin, echa nacimiento, id usuario, id_cliente).
FK
Usuario (id_usuario, usuario, clave, id_persona, id_role).
PK FK
Cliente (id_cliente, usuario, clave, id_persona).
PK FK
Role (id_role, nombre, id_usuario).
PK FK
Noticias (id_noticia, titulo, sumilla, cuerpo, fecha_ing., foto_chica, foto grande,
PK
estad,id_usuario).
FK
Categora (id_categoria, nombre, id_usuario, id_categoria).
PK FK
Producto (id_producto, nombre, descripcin, fecha_ingre, precio_normal,
PK
preicio_oferta,imagen_chica, oferta, estado, id_cliente, id_pedido).
FK
Carrito (id_cliente, id_producto, cantidad).
FK

Pedido (id_pedido, fecha_pedido, observacin, bruto, igv, total, id_carrito,
PK
id_producto).
FK
Detalle_pedido (id_pedido, id_producto, cantidad).
FK
CREACION DE
LA BASE DE DATOS Y TABLAS
ORACLE

GRUPO - DE BASE DE DATOS II 8

UNIBETH
create table persona
(
id_persona int not null primary key,
nombre varchar(50) not null,
apellido varchar(50) not null,
sexo char(1) not null check(sexo in('M','F')),
telefono varchar(8) not null,
edad int not null,
ocupacion varchar(50) null,
fecha_nacimiento date

)


CREATE TABLE cliente
(
id_persona int not null PRIMARY KEY,
usuario varchar(50) not null,
clave varchar(50) not null,
FOREIGN KEY(id_persona) REFERENCES persona (id_persona)
)


CREATE TABLE roles
(
id_role int not null PRIMARY KEY,
nombre varchar(50) not null
)

CREATE TABLE usuario
(
id_persona int not null PRIMARY KEY,
nombre varchar(50) not null,
clave varchar(50) not null,
FOREIGN KEY (id_persona) REFERENCES persona (id_persona),
id_role int not null, FOREIGN KEY (id_role) REFERENCES roles (id_role)
)

CREATE TABLE noticia
(
id_noticia int not null PRIMARY KEY,
titulo varchar(50) not null,
sumilla varchar(50) not null,
cuerpo varchar(50) not null,
fecha_ingreso date not null,
foto_chica varchar(50) null,
foto_grande varchar(50) null,
estado char(1) not null check(estado in('A','I'))
)


CREATE TABLE categoria
(
id_categoria int not null PRIMARY KEY,
nombre varchar(50) not null
)


GRUPO - DE BASE DE DATOS II 9

UNIBETH

CREATE TABLE producto
(
id_producto int not null PRIMARY KEY,
nombre varchar(50) not null,
descripcion varchar(50) not null,
fecha_ingreso date not null,
precio_normal float not null,
precio_oferta float not null,
foto_chica varchar(50) null,
foto_grande varchar(50) null,
oferta char(2) check (oferta in('SI','NO')),
estado char(1)check (estado in('A','I')),
id_categoria INT NOT NULL, FOREIGN KEY(id_categoria) REFERENCES categoria (id_categoria)
)


CREATE TABLE pedido
(
id_pedido int not null primary key,
fecha_pedido date not null,
descripcion varchar(200) not null,
bruto float not null,
igv float not null,
total float not null
)

create table detalle_pedido
(
precio float not null ,
cantidad int not null,
id_pedido int not null, foreign key (id_pedido)references pedido(id_pedido),
id_producto int not null, foreign key (id_producto)references producto(id_producto)
)


create table carrito
(
id_cliente int not null,
foreign key(id_cliente ) references cliente(id_persona ),
id_producto int not null,
foreign key(id_producto)references producto(id_producto),
cantidad int not null
)


SQL SERVER
create database db_tienda_rosario
go
use db_tienda_rosario
go
create table persona
(
id_persona int not null identity primary key,

GRUPO - DE BASE DE DATOS II 10

UNIBETH
nombre varchar(50) not null,
apellido varchar(50) not null,
sexo char(1) not null check(sexo in('M','F')),
telefono varchar(8) not null,
edad int not null,
ocupacion varchar(50) null,
fecha_nacimiento datetime

)
go
CREATE TABLE cliente
(
id_persona int not null IDENTITY PRIMARY KEY,
usuario varchar(50) not null,
clave varchar(50) not null,
FOREIGN KEY(id_persona) REFERENCES persona (id_persona)
)
GO
CREATE TABLE usuario
(
id_persona int not null IDENTITY PRIMARY KEY,
nombre varchar(50) not null,
clave varchar(50) not null,
FOREIGN KEY (id_persona) REFERENCES persona (id_persona),
id_role int not null FOREIGN KEY (id_role) REFERENCES roles (id_role)
)
GO
CREATE TABLE roles
(
id_role int not null IDENTITY PRIMARY KEY,
nombre varchar(50) not null
)
GO
CREATE TABLE noticia
(
id_noticia int not null IDENTITY PRIMARY KEY,
titulo varchar(50) not null,
sumilla varchar(50) not null,
cuerpo varchar(50) not null,
fecha_ingreso datetime not null,
foto_chica varchar(50) null,
foto_grande varchar(50) null,
estado char(1) not null check(estado in('A','I'))
)
GO

CREATE TABLE categoria
(
id_categoria int not null IDENTITY PRIMARY KEY,
nombre varchar(50) not null
)
GO

CREATE TABLE producto
(
id_producto int not null IDENTITY PRIMARY KEY,
nombre varchar(50) not null,

GRUPO - DE BASE DE DATOS II 11

UNIBETH
descripcion varchar(50) not null,
fecha_ingreso datetime not null,
precio_normal float not null,
precio_oferta float not null,
foto_chica varchar(50) null,
foto_grande varchar(50) null,
oferta char(2) check (oferta in('SI','NO')),
estado char(1)check (estado in('A','I')),
id_categoria INT NOT NULL FOREIGN KEY REFERENCES categoria (id_categoria)
)
GO


CREATE TABLE pedido
(
id_pedido int not null identity primary key,
fecha_pedido datetime not null,
descripcion varchar(200) not null,
bruto float not null,
igv float not null,
total float not null
)
go


create table detalle_pedido
(
precio float not null ,
cantidad int not null,
id_pedido int not null, foreign key (id_pedido)references pedido(id_pedido),
id_producto int not null, foreign key (id_producto)references producto(id_producto)
)
go


create table carrito
(
id_cliente int not null,
foreign key(id_cliente ) references cliente(id_persona ),
id_producto int not null,
foreign key(id_producto)references producto(id_producto),
cantidad int not null
)
Go

My SQL


Create database db_tienda_rosario;
use db_tienda_rosario;

create table persona
(
id_persona int not null primary key,
nombre varchar(50) not null,
apellido varchar(50) not null,

GRUPO - DE BASE DE DATOS II 12

UNIBETH
sexo char(1) not null check(sexo in('M','F')),
telefono varchar(8) not null,
edad int not null,
ocupacion varchar(50) null,
fecha_nacimiento date

)engine =innodb;

CREATE TABLE cliente
(
id_persona int not null PRIMARY KEY,
usuario varchar(50) not null,
clave varchar(50) not null,
FOREIGN KEY(id_persona) REFERENCES persona (id_persona)
)engine =innodb;

CREATE TABLE roles
(
id_role int not null PRIMARY KEY,
nombre varchar(50) not null
)
engine=innodb


CREATE TABLE usuario
(
id_persona int not null PRIMARY KEY,
nombre varchar(50) not null,
clave varchar(50) not null,
FOREIGN KEY (id_persona) REFERENCES persona (id_persona),
id_role int not null,
FOREIGN KEY (id_role) REFERENCES roles (id_role)
)engine=innodb

CREATE TABLE noticia
(
id_noticia int not null PRIMARY KEY,
titulo varchar(50) not null,
sumilla varchar(50) not null,
cuerpo varchar(50) not null,
fecha_ingreso date not null,
foto_chica varchar(50) null,
foto_grande varchar(50) null,
estado char(1) not null check(estado in('A','I'))
)
engine=innodb

CREATE TABLE categoria
(
id_categoria int not null PRIMARY KEY,
nombre varchar(50) not null
)

CREATE TABLE producto
(
id_producto int not null PRIMARY KEY,
nombre varchar(50) not null,

GRUPO - DE BASE DE DATOS II 13

UNIBETH
descripcion varchar(50) not null,
fecha_ingreso datetime not null,
precio_normal float not null,
precio_oferta float not null,
foto_chica varchar(50) null,
foto_grande varchar(50) null,
oferta char(2) check (oferta in('SI','NO')),
estado char(1)check (estado in('A','I')),
id_categoria INT NOT NULL,
FOREIGN KEY(id_categoria) REFERENCES categoria (id_categoria)
)
engine=innodb

CREATE TABLE pedido
(
id_pedido int not null primary key,
fecha_pedido datetime not null,
descripcion varchar(200) not null,
bruto float not null,
igv float not null,
total float not null
)engine=innodb;

create table detalle_pedido
(
precio float not null ,
cantidad int not null,
id_pedido int not null, foreign key (id_pedido)references pedido(id_pedido),
id_producto int not null, foreign key (id_producto)references producto(id_producto)
)engine=innodb;












IV.- CONCLUSION
Como grupo, hemos llegado a la conclusin, de que para hacer ms til el manejo de esta
base de datos, el programador deber cumplir con los parmetros establecidos en la base de
datos al Manipular la interfaz del Sistema.
V.- RECOMENDACION

GRUPO - DE BASE DE DATOS II 14

UNIBETH
Como recomendacin grupal damos a conocer que, por seguridad, al tener la base de datos
pobladas, se deber hacer un Backus del mismo semanal o mensualmente, para tener un
respaldo ante cualquier evento que pudiesen provocar la integridad y prdida de los datos.

Vous aimerez peut-être aussi