escuela técnica superior de ingeniería informática Creación de la base de datos Departamento de Lenguajes y Sistemas Informáticos Ingeniería del Software de Gestión III
Índice Introducción Modelo de objetos Modelo de datos Script de creación de la BD
MySQL Características: DBMS relacional No integridad referencial (se podría) No permite selects anidados Herramientas: DBMS mysqld console mysqladmin -shutdown MySQL Administrator Crear nuevas BDs Definir nuevos usuarios / definir los permisos MySQL Query Browser Lanzar consultas SQL al DBMS MySQL
MySQL Administrator
MySQL Administrator
MySQL Administrator/ Catálogo
MySQL Administrator/ Usuarios
MySQL Administrator/ Permisos
MySQL Query Browser
MySQL Query Browser Consultas SQL Vista de la BD Scripts y Resultsets Ayuda
Índice Introducción Modelo de objetos Modelo de datos Script de creación de la BD
Modelo de objetos del POS Customer <<Class Model>> - customerid: String... 1 placedbycustomer CreditCard - holder: String - number: String - month: int - year: int 1 payment 1..* Order 1..* - orderid: String - deliverto: Addres - payment: CreditCard - timeplaced: Date - details:list - placedbycustomer: String 1..* 1 deliverto Address - city: String - email: String - fax: String - phone: String - name: String - state: String - street: String - zipcode: int Detail - note: String - quantity: int - product: Product 1..* 1 Product - productid: String - description: String - price: int
Índice Introducción Modelo de objetos Modelo de datos Script de creación de la BD
Modelo de datos del POS <<Physical Data Model>> CreditCard OID: varchar(50) = <<PK>> holder: varchar(50) number: varchar(50) month: int year: int 1 payment 1..* Order OID: varchar(50) = <<PK>> orderid: varchar(50) addressoid: varchar(50) = <<FK >> creditcardoid : varchar(50)=<<fk>> timeplaced: bigint placedbycustomer: varchar(50) 1..* 1 deliverto Address OID: varchar(50) = <<PK>> city: varchar(50) email: varchar(50) fax: varchar(50) phone: varchar(50) name: varchar(50) street: varchar(50) zipcode: int Detail 1..* 1 Product OID: varchar(50) = <<PK>> orderoid: varchar(50)=<<fk>> productoid: varchar(50)=<<fk>> note: varchar(250) quantity: int OID : varchar(50) = <<PK>> productid: varchar(50) description: varchar(250) price: int
Índice Introducción Modelo de objetos Modelo de datos Script de creación de la BD
Script de creación de la BD <<Physical Data Model>> CREATE TABLE Orders ( OID varchar(50) NOT NULL, orderid varchar(50) NOT NULL, addressoid varchar(50) NOT NULL, cerditcardoid varchar(50) NOT NULL, timeplaced bigint NOT NULL, placedbycustomer varchar(50) NOT NULL, PRIMARY KEY(OID)); CREATE TABLE Address ( OID varchar(50) NOT NULL, city varchar(50) NOT NULL, email varchar(50), fax varchar(50), phone varchar(50), name varchar(50) NOT NULL, street varchar(50) NOT NULL, zipcode int NOT NULL, PRIMARY KEY(OID)); CreditCard OID : varchar(50) = <<PK>> holder: varchar(50) number: varchar(50) month: int year: int 1 payment 1..* Order OID : varchar(50) = <<PK>> orderid: varchar(50) addressoid: varchar(50) = <<FK>> creditcardoid: varchar(50)=<<fk>> timeplaced: bigint placedbycustomer: varchar(50) 1..* 1 deliverto Address OID: varchar(50) = <<PK>> city: varchar(50) email: varchar(50) fax: varchar(50) phone: varchar(50) name: varchar(50) street: varchar(50) zipcode: int CREATE TABLE CreditCard ( OID varchar(50) NOT NULL, holder varchar(50) NOT NULL, number varchar(50) NOT NULL, month int NOT NULL, year int NOT NULL, PRIMARY KEY(OID)); Detail OID : varchar(50) = <<PK>> orderoid: varchar(50)=<<fk>> productoid: varchar(50)=<<fk>> note: varchar(250) quantity: int 1..* 1 Product OID: varchar(50) = <<PK>> productid: varchar(50) description: varchar(250) price: int CREATE TABLE Detail ( OID varchar(50) NOT NULL, orderoid varchar(50) NOT NULL, productoid varchar(50) NOT NULL, note varchar(250), quantity int NOT NULL, PRIMARY KEY(OID)); CREATE TABLE Product ( OID varchar(50) NOT NULL, productid varchar(50) NOT NULL, description varchar(250), price int NOT NULL, PRIMARY KEY(OID));
Script de creación de la BD DROP TABLE if exists Product; CREATE TABLE Product ( oid varchar(50) NOT NULL, productid varchar(50) NOT NULL, description varchar(250), price int NOT NULL, PRIMARY KEY(OID)); INSERT INTO Product (OID, productid, description, price) VALUES ('1', '1-161899M', 'Monitor', 150); INSERT INTO Product (OID, productid, description, price) VALUES ('2', '1-262399T', 'Teclado', 25); INSERT INTO Product (OID, productid, description, price) VALUES ('3', '1-663297R', 'Raton', 12); INSERT INTO Product (OID, productid, description, price) VALUES ('4', '1-164889C', 'CPU', 250);
Script de creación de la BD DROP TABLE if exists Address; CREATE TABLE Address ( OID varchar(50) NOT NULL, city varchar(50) NOT NULL, email varchar(50), fax varchar(50), phone varchar(50), name varchar(50) NOT NULL, street varchar(50) NOT NULL, zipcode int NOT NULL, PRIMARY KEY(OID)); DROP TABLE if exists CreditCard; CREATE TABLE CreditCard ( OID varchar(50) NOT NULL, holder varchar(50) NOT NULL, number varchar(50) NOT NULL, month int NOT NULL, year int NOT NULL, PRIMARY KEY(OID));
Script de creación de la BD DROP TABLE if exists Detail; CREATE TABLE Detail ( OID varchar(50) NOT NULL, orderoid varchar(50) NOT NULL, productoid varchar(50) NOT NULL, note varchar(250), quantity int NOT NULL, PRIMARY KEY(OID)); DROP TABLE if exists Orders; CREATE TABLE Orders ( OID varchar(50) NOT NULL, orderid varchar(50) NOT NULL, addressoid varchar(50) NOT NULL, creditcardoid varchar(50) NOT NULL, timeplaced bigint NOT NULL, placedbycustomer varchar(50) NOT NULL, PRIMARY KEY(OID));
!Gracias! Podemos mejorar esta lección? Mándanos un email a benavides@us.es