Está en la página 1de 6

Matias Bussetti

Página: 1 de 6

Ejercicio 1
2 …. Diagrama en página
3 …. SQL de tablas y base de datos en página
En letra chica para copiar mejor:
4 …. En letra grande para leer mejor:
Matias Bussetti
Página: 2 de 6
Matias Bussetti
Página: 3 de 6

SQL de base de datos y tablas:

En letra chica para copiar mejor:

--- Base de Datos


CREATE TABLE IF NOT EXISTS public.banda
(
id_banda integer NOT NULL GENERATED ALWAYS AS IDENTITY ( INCREMENT 1 START 0 MINVALUE 0 MAXVALUE 2147483647 CACHE 1 ),
nombre text COLLATE pg_catalog."default" NOT NULL,
genero text COLLATE pg_catalog."default" NOT NULL,
cantidad_integrantes integer NOT NULL,
nombre_representante text COLLATE pg_catalog."default" NOT NULL,
cache real NOT NULL,
CONSTRAINT banda_pkey PRIMARY KEY (id_banda)
)

TABLESPACE pg_default;

ALTER TABLE IF EXISTS public.banda


OWNER to postgres;

--- Tabla: Lugar


CREATE TABLE IF NOT EXISTS public.lugar
(
nombre_lugar text COLLATE pg_catalog."default" NOT NULL,
direccion text COLLATE pg_catalog."default" NOT NULL,
capacidad integer NOT NULL,
nombre_ciudad text COLLATE pg_catalog."default" NOT NULL,
tiene_estacionamiento boolean NOT NULL,
CONSTRAINT "Lugar_pkey" PRIMARY KEY (nombre_lugar)
)

TABLESPACE pg_default;

ALTER TABLE IF EXISTS public.lugar


OWNER to postgres;

--- Tabla: Persona


CREATE TABLE IF NOT EXISTS public.persona
(
dni integer NOT NULL,
nombre text COLLATE pg_catalog."default" NOT NULL,
apellido text COLLATE pg_catalog."default" NOT NULL,
telefono integer,
mail text COLLATE pg_catalog."default",
direccion text COLLATE pg_catalog."default",
CONSTRAINT persona_pkey PRIMARY KEY (dni)
)

TABLESPACE pg_default;

ALTER TABLE IF EXISTS public.persona


OWNER to postgres;

--- Relación: Funcion


CREATE TABLE public.funcion
(
id_funcion integer NOT NULL GENERATED ALWAYS AS IDENTITY ( INCREMENT 1 START 0 MINVALUE 0 ),
id_banda integer NOT NULL,
nombre_lugar text NOT NULL,
precio_ticket real NOT NULL,
fecha date NOT NULL,
hora integer NOT NULL,
PRIMARY KEY (id_funcion),
FOREIGN KEY (id_banda)
REFERENCES public.banda (id_banda) MATCH SIMPLE
ON UPDATE NO ACTION
ON DELETE NO ACTION
NOT VALID,
FOREIGN KEY (nombre_lugar)
REFERENCES public.lugar (nombre_lugar) MATCH SIMPLE
ON UPDATE NO ACTION
ON DELETE NO ACTION
NOT VALID
);

ALTER TABLE IF EXISTS public.funcion


OWNER to postgres;

--- Relación: Venta de Tickets


CREATE TABLE public.venta_ticket
(
id_funcion integer NOT NULL,
dni integer NOT NULL,
FOREIGN KEY (id_funcion)
REFERENCES public.funcion (id_funcion) MATCH SIMPLE
ON UPDATE NO ACTION
ON DELETE NO ACTION
NOT VALID,
FOREIGN KEY (dni)
REFERENCES public.persona (dni) MATCH SIMPLE
ON UPDATE NO ACTION
ON DELETE NO ACTION
NOT VALID
);

ALTER TABLE IF EXISTS public.venta_ticket


OWNER to postgres;
Matias Bussetti
Página: 4 de 6

En letra grande para leer mejor:


--- Base de Datos
CREATE TABLE IF NOT EXISTS public.banda
(
id_banda integer NOT NULL GENERATED ALWAYS AS IDENTITY (
INCREMENT 1 START 0 MINVALUE 0 MAXVALUE 2147483647 CACHE 1 ),
nombre text COLLATE pg_catalog."default" NOT NULL,
genero text COLLATE pg_catalog."default" NOT NULL,
cantidad_integrantes integer NOT NULL,
nombre_representante text COLLATE pg_catalog."default" NOT NULL,
cache real NOT NULL,
CONSTRAINT banda_pkey PRIMARY KEY (id_banda)
)

TABLESPACE pg_default;

ALTER TABLE IF EXISTS public.banda


OWNER to postgres;

--- Tabla: Lugar


CREATE TABLE IF NOT EXISTS public.lugar
(
nombre_lugar text COLLATE pg_catalog."default" NOT NULL,
direccion text COLLATE pg_catalog."default" NOT NULL,
capacidad integer NOT NULL,
nombre_ciudad text COLLATE pg_catalog."default" NOT NULL,
tiene_estacionamiento boolean NOT NULL,
CONSTRAINT "Lugar_pkey" PRIMARY KEY (nombre_lugar)
)

TABLESPACE pg_default;

ALTER TABLE IF EXISTS public.lugar


OWNER to postgres;

--- Tabla: Persona


CREATE TABLE IF NOT EXISTS public.persona
(
dni integer NOT NULL,
nombre text COLLATE pg_catalog."default" NOT NULL,
apellido text COLLATE pg_catalog."default" NOT NULL,
Matias Bussetti
Página: 5 de 6

telefono integer,
mail text COLLATE pg_catalog."default",
direccion text COLLATE pg_catalog."default",
CONSTRAINT persona_pkey PRIMARY KEY (dni)
)

TABLESPACE pg_default;

ALTER TABLE IF EXISTS public.persona


OWNER to postgres;

--- Relación: Funcion


CREATE TABLE public.funcion
(
id_funcion integer NOT NULL GENERATED ALWAYS AS IDENTITY (
INCREMENT 1 START 0 MINVALUE 0 ),
id_banda integer NOT NULL,
nombre_lugar text NOT NULL,
precio_ticket real NOT NULL,
fecha date NOT NULL,
hora integer NOT NULL,
PRIMARY KEY (id_funcion),
FOREIGN KEY (id_banda)
REFERENCES public.banda (id_banda) MATCH SIMPLE
ON UPDATE NO ACTION
ON DELETE NO ACTION
NOT VALID,
FOREIGN KEY (nombre_lugar)
REFERENCES public.lugar (nombre_lugar) MATCH SIMPLE
ON UPDATE NO ACTION
ON DELETE NO ACTION
NOT VALID
);

ALTER TABLE IF EXISTS public.funcion


OWNER to postgres;

--- Relación: Venta de Tickets


CREATE TABLE public.venta_ticket
(
id_funcion integer NOT NULL,
Matias Bussetti
Página: 6 de 6

dni integer NOT NULL,


FOREIGN KEY (id_funcion)
REFERENCES public.funcion (id_funcion) MATCH SIMPLE
ON UPDATE NO ACTION
ON DELETE NO ACTION
NOT VALID,
FOREIGN KEY (dni)
REFERENCES public.persona (dni) MATCH SIMPLE
ON UPDATE NO ACTION
ON DELETE NO ACTION
NOT VALID
);

ALTER TABLE IF EXISTS public.venta_ticket


OWNER to postgres;

También podría gustarte