Le Deal du moment : -55%
Coffret d’outils – STANLEY – ...
Voir le deal
21.99 €

Correction var2 2011 partie base de donnée

Voir le sujet précédent Voir le sujet suivant Aller en bas

correction - Correction var2 2011 partie base de donnée Empty Correction var2 2011 partie base de donnée

Message par Mr.Hicham Lun Juil 11, 2011 7:14 pm

Salut voila la partie Base de donnée Var 2 2011
khdmtha daghia ta9dro tl9aw des erreurs f kestions 7 , les autres kolchi mzian

Q 1 :
Code:

/* Q 1 */
use master
go
if exists(select name from sys.databases where name = 'v2_2011')
drop database v2_2011
create database v2_2011
go

use v2_2011
go

if OBJECT_ID('Personnel','U') is not null
drop table Personnel
create table Personnel(matricule int primary key not null,
                    nom nvarchar(20),
                    prenom nvarchar(20),
                    telephone varchar(10),
                    pass varchar(20))
go

if OBJECT_ID('Autocar','U') is not null
drop table Autocar
create table Autocar(code_car int primary key not null,
                    capacite int,
                    date_achat date,
                    consommation int)
go

if OBJECT_ID('Ligne','U') is not null
drop table Ligne
create table Ligne(code_ligne int primary key not null,
                    distance int)
go

if OBJECT_ID('Calendrier','U') is not null
drop table Calendrier
create table Calendrier(code_calendrier int primary key not null,
                        jour_voyage int,
                        heur_depart time,
                        heur_arrive time,
                        code_ligne int foreign key references Ligne(code_ligne) on delete cascade on update cascade)
go

if OBJECT_ID('Ville','U') is not null
drop table Ville
create table Ville(code_ville int primary key not null,
                    nom_ville nvarchar(30))
go


if OBJECT_ID('Voyage','U') is not null
drop table Voyage
create table Voyage(code_voyage int identity(1,1) primary key not null,
                    dh_depart_voyage datetime,
                    dh_arrivee_voyage datetime,
                    places int,
                    compteur_depart int,
                    compteur_arrivee int,
                    matricule int foreign key references Personnel(matricule) on delete cascade on update cascade,
                    code_car int foreign key references Autocar(code_car) on delete cascade on update cascade,
                    code_calendrier int foreign key references Calendrier(code_calendrier) on delete cascade on update cascade)
go

if OBJECT_ID('Passer','U') is not null
drop table Passer
create table Passer(code_ligne int foreign key references Ligne(code_ligne) on delete cascade on update cascade,
                    code_ville int foreign key references Ville(code_ville) on delete cascade on update cascade,
                    order_passage int,
                    constraint pk_passer primary key(code_ligne,code_ville))
go

/* Jeu D'essai */
insert into Personnel values(1,'hicham','Adil','0987890','azqswx')
insert into Personnel values(2,'Abdo','karim','0987890','azerty')

insert into Autocar values(1,1000,'22/11/2009',6)
insert into Autocar values(2,500,'22/11/2007',10)

insert into Ligne values(1,400)
insert into Ligne values(2,700)

insert into Calendrier values(1,2,'17:00','20:05',1)
insert into Calendrier values(2,4,'13:00','15:30',2)

insert into Ville values(1,'taza')
insert into Ville values(2,'fes')

insert into Voyage values('20/06/2010 07:05','20/06/2010 09:05',20,90,100,1,1,1)
insert into Voyage values('12/08/2010 12:30','12/08/2010 14:30',20,90,100,2,2,2)

insert into Passer values(1,1,3)
insert into Passer values(2,2,4)


Q 2 :
Code:

/* Q 2_a */
alter table Passer add constraint chk_order check(order_passage between 1 and 9)
go

/* Q 2_b */
alter table Autocar add constraint chk_consom check(consommation between 6 and 16)
go


Q 3 :
Code:

/* Q 3 */

create function fn_kp(@ca int , @cd int)
returns int
as begin
return(@ca-@cd)
end

alter table Voyage add KP As (dbo.fn_kp(compteur_arrivee,compteur_depart)) 
go


Q 4 :
Code:

/* Q 4 */
if OBJECT_ID('tr1','TR') is not null
drop trigger tr1
go
create trigger tr1 On Passer for insert as
declare @ord int
select @ord = order_passage from inserted
if(@ord = ( select order_passage from inserted,Ligne L where inserted.code_ligne = L.code_ligne))
begin
print('Impossible')
rollback transaction
end

Q 5 :
Code:

/* Q 5 */
if object_id('f1','FN') is not null
drop function f1
go
create function f1(@code int)
returns nvarchar
as begin
return(select V.nom_ville from Ville V,Ligne L,Passer P
        where P.code_ville = V.code_ville and P.code_ligne = L.code_ligne
        and P.code_ligne = @code)
end


Q 6 :
Code:

/* Q 6 */
if object_id('f2','FN') is not null
drop function f2
go
create function f2(@code int)
returns table
as begin
return(select V.nom_ville from Ville V,Ligne L,Passer P
        where P.code_ville = V.code_ville and P.code_ligne = L.code_ligne
        and P.code_ligne = @code)
end

Q 7 :
Code:

/* Q 7 */
declare @code int
declare NomVille cursor for
select V.nom_ville from Ville V,Ligne L,Passer P
        where P.code_ville = V.code_ville and P.code_ligne = L.code_ligne
        and P.code_ligne = @code
open NomVille
Fetch next from NomVille into @code
while(@@FETCH_STATUS=0)
begin
fetch next from NomVille into @code
end
close NomVille
deallocate NomVille
go


Mr.Hicham
Mr.Hicham
 
 

Nombre de messages : 464
Date d'inscription : 25/05/2010
Masculin

Revenir en haut Aller en bas

correction - Correction var2 2011 partie base de donnée Empty Re: Correction var2 2011 partie base de donnée

Message par nitch01 Lun Juil 11, 2011 7:29 pm

Layrham lwalidin akhoya


nitch01
nitch01
 
 

Nombre de messages : 5
Date d'inscription : 19/06/2011
Masculin

Revenir en haut Aller en bas

correction - Correction var2 2011 partie base de donnée Empty Re: Correction var2 2011 partie base de donnée

Message par Yacine Lun Juil 11, 2011 9:26 pm

Chokran , Wkha Had Chi S3éb WMa9rinahch :/ !!


Yacine
Yacine
 
 

Nombre de messages : 24
Date d'inscription : 23/04/2011
Masculin

Revenir en haut Aller en bas

correction - Correction var2 2011 partie base de donnée Empty Re: Correction var2 2011 partie base de donnée

Message par karima koko Lun Juil 11, 2011 11:22 pm

pour la variant 3 svp


karima koko
karima koko
 
 

Nombre de messages : 15
Date d'inscription : 02/07/2011
Féminin

Revenir en haut Aller en bas

correction - Correction var2 2011 partie base de donnée Empty Re: Correction var2 2011 partie base de donnée

Message par lovyta Mar Juil 12, 2011 4:56 pm

MERCI KHOYA HICHAM


lovyta
lovyta
 
 

Nombre de messages : 1
Date d'inscription : 11/07/2011
Féminin

Revenir en haut Aller en bas

correction - Correction var2 2011 partie base de donnée Empty Re: Correction var2 2011 partie base de donnée

Message par Contenu sponsorisé




Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum