Creamos una base de datos llamada biblioteca:
create database
biblioteca;
Usamos la base de datos antes creada:
use biblioteca;
Creamos una tabla llamada autor y describimos esta misma
tabla creada:
create table autor(codigo int not null
auto_increment primary key,nombre
varchar (30));
describe autor;
Creamos una tabla llamada libros y describimos esta misma
tabla creada:
create table libros(codigo int not null
auto_increment primary key,titulo
varchar(30),ISBN
varchar(30),editorial varchar(30),num_paginas int);
describe libros;
Creamos una tabla llamada usuarios y describimos esta misma
tabla creada:
create table usuarios(codigo_usuario int not
null auto_increment primary
key,nombre
varchar(30),direccion varchar(50),telefono varchar(30),codigo_ajempla
r int);
describe usuarios;
Creamos una tabla llamada ejemplares y describimos esta
misma tabla creada:
create table
ejemplares(codigo_ajemplar int not null auto_increment prima
ry key,localizacion
varchar(30));
describe ejemplares;
Ahora insertaremos 3 registros a nuestra tabla usuarios:
insert into
usuarios(nombre,direccion,telefono,codigo_ejemplar) values
('Miguel','Ave signos
23','53221234',3),
('Pedro','Calle
Tulipanes','54321234',4),
('Amanda','Ave.
Constelacion','56433245',5);
Mostraremos la tabla antes creada:
Select * from
usuarios;
Creamos una tabla llamada ejemplares y describimos esta
misma tabla creada:
create table copia_usuario(codigo int not null
auto_increment primary key,
nombre_ant
varchar(30),
direccion_anterior
varchar(50),
telefono_anterior
varchar(50),
codigo_ajemplar_anterior
int,
nombre_nuevo
varchar(30),
direccion_nueva
varchar(50),
telefono_nuevo
varchar(30),
codigo_ajemplar_nuevo
int,
usuario varchar(40),
modificado datetime,
codigo_usuario
int(4));
describe
copia_usuario;
Cambiamos el delimitador y enseguida creamos un trigger que
nos ayudara a guardar los usuarios que eliminaron de nuestra tabla usuarios:
delimiter //
create trigger
elimina_usuarios_ejemplares
after delete on usuarios
for each row
begin
insert into
copia_usuario(nombre_ant,direccion_anterior,telefono_anterior,codigo_ajemplar_anterior,usuario,modificado,codigo_usuario)
values
(OLD.nombre,OLD.direccion,OLD.telefono,OLD.codigo_ajemplar,CURRENT_USER(),NOW(),OLD.codigo_usuario);
end;
//
Cambiamos el delimitador y enseguida mostraremos la tabla de
usuarios:
delimiter ;
select * from
usuarios;
Borraremos un registro de nuestra tabla usuarios:
delete from usuarios
where codigo_ajemplar=4;
Mostramos nuestra tabla de usuarios para ver la modificación
que se realizo:
select * from
usuarios;
Ahora mostraremos la tabla copia_usuario para ver los
registros antes eliminados:
select * from
copia_usuario;













No hay comentarios:
Publicar un comentario