1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| create table equipe(
id_equipe int primary key identity(1,1),
nom varchar(20) not null,
nbre_pts int default 0,
nbre_marque int default 0,
nbre_encaisse int default 0
)
create table match(
id_equipe1 int,
id_equipe2 int,
dat datetime ,
score_rec int,
score_inv int,
constraint fk_e foreign key (id_equipe1) references equipe(id_equipe),
constraint fk_n foreign key (id_equipe2) references equipe(id_equipe),
constraint fc_e primary key (id_equipe1,id_equipe2)
)
--la procédure en sql/server
create proc ajoute_match
(@a int,@b int,@c datetime,@d int,@f int)
as
begin
insert into match values (@a,@b,@c,@d,@f)
update equipe
set nbre_marque=nbre_marque+@d, nbre_encaisse=nbre_encaisse+@f
where id_equipe=@a
update equipe
set nbre_marque=nbre_marque+@f, nbre_encaisse=nbre_encaisse+@d
where id_equipe=@b
if(@d>@f)
update equipe
set nbre_pts= nbre_pts+3
where id_equipe=@a
if(@d<@f)
update equipe
set nbre_pts=nbre_pts+3
where id_equipe=@b
if(@d=@f)
update equipe
set nbre_pts=nbre_pts+1
where id_equipe=@a or id_equipe=@b
end |
Partager