Partición en mysql
Edwin CamposTrabajo19 de Mayo de 2020
274 Palabras (2 Páginas)218 Visitas
CREATE SCHEMA `administrar_espacio_mysql` ;
create table alumnos (id int(3), nombre varchar(40), edad int(2), matricula int(10), carrrera varchar(20), semestre int(2), localidad varchar(20)) partition by range(id)(partition part1 values less than (6), partition part2 values less than(11), partition part3 values less than (16));
insert into `alumnos` (`id`,`nombre`,`edad`,`matricula`,`carrrera`,`semestre`,`localidad`) VALUES('1','jesus castiillo','31','12345678','sistemas','8','landa'),('2','juan martinez','32','12345679','sistemas','4','neblinas'),('3','gabriela marquez','34','12345670','sistemas','8','lagunita'),('4','jose navas','35','12345671','sistemas','4','landa'),('5','victor villeda','32','12345672','sistemas','8','lagunita'),('6','monica galindo','35','12345673','industrial','4','tunal'),('7','angelica perez','36','12345674','industrial','5','centro'),('8','alexis ramirez','31','12345675','industrial','4','centro'),('9','jorge mejia','34','12345676','industrial','4','tunal'),('10','abel perez','33','12345677','industrial','2','tunal'),('11','rosalio rosales','33','12345683','gestion','4','centro'),('12','rafael perez','38','12345693','gestion','5','centro'),('13','silvia garcia','32','12345603','gestion','3','centro'),('14','alberth campos','32','12345613','gestion','5','tunal'),('15','johani pizo','35','12345623','gestion','6','centro');
create view parte1 as select * from alumnos partition (part1);
SELECT * FROM administrar_espacio_mysql.parte1;
create view parte2 as select * from alumnos partition (part2);
SELECT * FROM administrar_espacio_mysql.parte2;
create view parte3 as select * from alumnos partition (part3);
SELECT * FROM administrar_espacio_mysql.parte3;
evidencias MySQL
[pic 1]
[pic 2]
[pic 3]
[pic 4]
[pic 5]
[pic 6]
Metodo con POSTGRESQL
CREATE DATABASE administrar_espacio_mysql
WITH
OWNER = postgres
ENCODING = 'UTF8'
CONNECTION LIMIT = -1;
LUEGO LE DAMOS CLICK DERECHO SOBRE ESQUEMA,LE DAMOS EN LA OPCION CREATE SCRIPT,ENSEGUIDA INGRAMOS EL SIGUIENTE CODIGO PARA CREAR LA TABLA
create table alumnos (id int, nombre varchar(40), edad int, matricula int, carrrera varchar(40), semestre int, localidad varchar(20));
create table alumnos_sistemas(check(carrrera='sistemas')) inherits(alumnos);
create table alumnos_industrial(check(carrrera='industrial')) inherits(alumnos);
create table alumnos_industrial(check(carrrera='gestion')) inherits(alumnos);
CREATE INDEX alumnos_sistemas_carrrea on alumnos_sistemas (carrrera);
CREATE INDEX alumnos_industrial_carrrea on alumnos_industrial (carrrera);
CREATE INDEX alumnos_gestion_carrrea on alumnos_gestion (carrrera);
create or replace function alumnos_insert()
returns trigger as $$
begin
if NEW.carrrera = 'sistemas' then
insert into alumnos_sistemas values (NEW.*);
else
if NEW.carrrera = 'industrial' then
insert into alumnos_industrial values (NEW.*);
else
if NEW.carrrera = 'gestion' then
insert into alumnos_gestion values (NEW.*);
end if;
end if;
end if;
return NULL;
END;
$$
LANGUAGE plpgsql;
create trigger insert_alumnos_trigger
before insert on alumnos
for each row execute procedure alumnos_insert();
insert into alumnos (id,nombre,edad,matricula,carrrera,semestre,localidad) VALUES('1','jesus castiillo','31','12345678','sistemas','8','landa'),('2','juan martinez','32','12345679','sistemas','4','neblinas'),('3','gabriela marquez','34','12345670','sistemas','8','lagunita'),('4','jose navas','35','12345671','sistemas','4','landa'),('5','victor villeda','32','12345672','sistemas','8','lagunita'),('6','monica galindo','35','12345673','industrial','4','tunal'),('7','angelica perez','36','12345674','industrial','5','centro'),('8','alexis ramirez','31','12345675','industrial','4','centro'),('9','jorge mejia','34','12345676','industrial','4','tunal'),('10','abel perez','33','12345677','industrial','2','tunal'),('11','rosalio rosales','33','12345683','gestion','4','centro'),('12','rafael perez','38','12345693','gestion','5','centro'),('13','silvia garcia','32','12345603','gestion','3','centro'),('14','alberth campos','32','12345613','gestion','5','tunal'),('15','johani pizo','35','12345623','gestion','6','centro');
...