drop table salle cascade;
drop table ordinateur;
drop function nouvelOrdi();

create table salle(codeSalle varchar not null primary key,
		nomSalle varchar,
		emplacement varchar
		);

create table ordinateur(noOrdinateur integer not null primary key,
		ip varchar ,
		dateAchat date ,
		marque varchar ,
		description varchar,
		codeSalle varchar references salle(codeSalle)
		);




create function nouvelOrdi() returns trigger
as
'
declare
	vNoOrdi integer;
begin
	select into vNoOrdi max(noOrdinateur) from ordinateur;
	if vNoOrdi is null then
		new.noOrdinateur:=1;
	else
		new.noOrdinateur:=vNoOrdi+1;
	end if;
	return new;
	
end;
'

language 'plpgsql';

create trigger trigNouvelOrdi before insert on ordinateur for each row execute procedure nouvelOrdi();

