Vous êtes sur la page 1sur 8

STI

Classe : 4ème année Sciences de l’Informatique

Révision : Devoir de synthèse n°1

---------------------------------

Nom du Prof : Mr. Hatem ROMDHANE

S
Exercice 1 15 min 4,5 pts
Dans un contexte de base de données et de développement web et pour chacune des
propositions ci-dessous, répondre par la lettre (V) si la réponse est correcte ou par la
lettre (F) dans le cas contraire.

1) En CSS, la fonction scale() de la propriété transform permet de/d’ :


déplacer horizontalement et verticalement un élément
redimensionner horizontalement et verticalement un élément
incliner un objet horizontalement et verticalement par rapport à son origine

2) En SQL, pour supprimer une table, on utilise la syntaxe suivante :


DELETE TABLE nom_table
DROP TABLE nom_table
DISABLE TABLE nom_table

3) En Javascript, la fonction IsNaN(X) retourne la valeur :


false si la variable X est une chaîne
true si la variable X est numérique
true si la variable X n’est pas numérique

4) En SQL, les fonctions agrégats peuvent être utilisées dans la clause :


SELECT
WHERE
HAVING

5) En HTML, l’évènement « onblur » d’une zone de texte se déclenche lorsqu’on :


change la valeur de la zone de texte
prend le focus de la zone de texte
perd le focus de la zone de texte

6) En SQL, le paramètre DISTINCT permet de/d’ :


vérifier l’unicité des valeurs dans une colonne d’une table
éliminer les lignes en double dans le résultat d’une requête
compter les lignes en doubles dans le résultat d’une requête

1
Exercice 2 15 min 2 pts
Soient les traitements suivants écrits en JavaScript :
N° Traitement Nom Rôle
i=0;
ok = true;
do
{ Déterminer le nombre de lettres
1 If(ch.charAt(i)>="A" && ch.charAt(i)<="Z")) A majuscules dans une chaîne de
i++; caractères.
else
ok = false;
} while (ok && i < ch.length);
X="0123456789";
i=0;
ok=true
while(i<ch.length && ok)
Vérifier si une chaîne de carac-
{
2 B tères est composée seulement
If(X.indexOf(ch.charAt(i))==-1)
par des lettres majuscules.
ok=false;
else
i++;
}
i=0;
while(i<10)
Vérifier si une chaîne de carac-
{
3 C tères est composée seulement
document.write (i."<br/>");
par des chiffres
i++;
}
L=0;
for(i=0;i<ch.length;i++) Afficher une suite de nombres de
4 D
if(ch.charAt(i)>="A" && ch.charAt(i)<="Z") 0 à 9.
L+=1

Compléter le tableau ci-dessous en indiquant pour chaque traitement le rôle corres-


pondant.
Traitement n° 1 2 3 4
Nom Rôle ….. ….. ….. …..

2
Exercice 3 20 min 4 pts
Une banque offre un service en ligne permettant à ses clients de consulter l’historique
des différentes transactions effectuées sur leurs comptes. Ci-dessous la représentation
textuelle simplifiée de la base de données « Gestion_comptes » dédiée à ce service :

CLIENT (CinCl, NomCl, AdrCl, EmailCl, TelCl)


COMPTE (NumCpt, TypeCpt, SoldeCpt, CinCl#)
TRANSACTION (NumTr, TypeTr, DateTr, MontTr, NumCpt#)

Description des champs


Champ Description Champ Description
CinCl Numéro CIN du client TypeCpt Type du compte (Courant, Epargne)
NomCl Nom et Prénom du client SoldeCpt Solde du compte
AdrCl Adresse du client NumTr Numéro de la transaction
Type de la transaction (Retrait, Vire-
EmailCl Adresse e-mail du client TypeTr
ment, Paiement en ligne, …)
TelCl Téléphone du client DateTr Date de la transaction
NumCpt Numéro du compte MontTr Montant de la transaction

On présente ci-dessous un extrait de la page "Consultation.html" qui permet à un


client de consulter l’historique des transactions effectuées après avoir choisi le compte
correspondant.

<form name="F" id="F">


<h1>Consultation transactions</h1>
<label>Numéro du compte : </label><select class="choix" id="choix">
<option value="">Choisir votre compte</option>
<option value="C1">0033ZE1478</option>
<option value="C2">0035ER4477</option>
<option value="C3">0038ZD7452</option>
</select>
<input type="submit" value="Valider"/><input type="reset" value="Annuler"/>
</form>

3
1) En se référant au code HTML de la page "Consultation.html", compléter le tableau
ci-dessous par le code CSS adéquat à chaque mise en forme.
Mise en forme Code CSS
………………………………………………………………….
Le formulaire doit avoir une bordure
………………………………………………………………….
solide de taille 1px de couleur bleu et
………………………………………………………………….
les coins arrondis de 5px
………………………………………………………………….
………………………………………………………………….
Le titre du formulaire doit être centré ………………………………………………………………….
et de couleur rouge ………………………………………………………………….
………………………………………………………………….
………………………………………………………………….
Le libellé du champ du formulaire doit
………………………………………………………………….
être en gras et commence par une
………………………………………………………………….
lettre majuscule
………………………………………………………………….
………………………………………………………………….
L’arrière-plan de la liste déroulante ………………………………………………………………….
doit être de couleur rgb(121, 150, 150) ………………………………………………………………….
………………………………………………………………….

2) Sachant que le clic sur le bouton « Valider » fait appel à une fonction Javascript
intitulée « Verif » développée dans le fichier « controle.js » et permettant de véri-
fier la validité du choix du numéro du compte par le client.
Pour chacune des propositions ci-dessous, mettre une croix (X) dans la case corres-
pondante.

a) L’instruction qui permet de relier le fichier « contrôle.js » à la page « Consulta-


tion.html » est :
<script href="controle.js"></script>
<script link="controle.js"></script>
<script src="controle.js"></script>

b) L’instruction qui permet d’appeler la fonction « Verif » est :


onsubmit ="Verif"
onsubmit ="return Verif"
onsubmit ="return verif()"

4
3) Compléter le script de la fonction « Verif » afin de s’assurer que le client a bien
sélectionné le numéro du compte correspondant
function Verif()
{
sel = ….……………………………………………..………………………………………………………………
if (sel …..………………)
{
alert("Le choix du compte est obligatoire") ;
return false ;
}

Exercice 4 10 min 2 pts


Soit la table STOCK d’une base de données permettant à une société de confection
textile de gérer la vente des vêtements dans différentes boutiques.
Dans ce qui suit, on donne la représentation textuelle de cette table ainsi que la des-
cription de ses colonnes et un extrait de son contenu.

Représentation textuelle Extrait du contenu

STOCK (IdArt, IdBout, QteStock) IdArt IdBout QteStock


11542 0001 52
Description des colonnes 13525 0002 100
Nom Description 62784 0001 130
IdArt Identifiant de l’article 13525 0003 10
IdBout Identifiant de la boutique 62784 0002 15
QteStock Quantité en stock 78321 0001 0

Questions :
1. En se référant aux éléments ci-dessus, répondre aux questions suivantes :
a. Quelle est la contrainte d’intégrité non respectée lors de la création de
cette table ?
b. Pourquoi la colonne IdArt ne peut pas être considérée comme étant une
clé primaire de cette table ?
c. Proposer une clé primaire pour cette table.
2. Qu’appelle-t-on la contrainte qui oblige les utilisateurs à saisir des valeurs posi-
tives dans la colonne QteStock ?

5
Exercice 5 60 min 7,5 pts
Soit la base de données simplifiée intitulée « Gestion_abonnés » permettant de gérer
les abonnements ADSL d'un Fournisseur de Services Internet à travers ses différentes
agences. Elle est décrite par la représentation textuelle suivante :
CLIENT (CinCl, NomCl, PreCl, AdrCl, TelCl)
AGENCE (CodeAg, AdrAg, TelAg)
CONNEXION (CodeCnx, LibCnx, DebitCnx, PrixCnx)
ABONNEMENT (NumAb, CinCl#, CodeCnx#, CodeAg#, TelAb, DateAb, DureeAb)

Description des champs


Nom Description Nom Description
colonne colonne
CinCl Numéro CIN d’un client CodeCnx Code d’une connexion
NomCl Nom d’un client LibCnx Libellé d’une connexion
PreCl Prénom d’un client DebitCnx Débit d’une connexion
AdrCl Adresse d’un client PrixCnx Prix d’une connexion
TelCl Téléphone d’un client NumAb Numéro d’un abonnement
CodeAg Code d’une agence TelAb Téléphone d’un abonnement
AdrAg Adresse d’une agence DateAb Date d’un abonnement
TelAg Téléphone d’une agence DureeAb Durée d’un abonnement

NB :
• Le champ DebitCnx est un entier exprimé en Méga octets (Mo)
• Le champ DureeAb est un entier exprimé en nombre de mois

1) À la suite de l’ouverture d’une nouvelle agence, le Fournisseur de Services Internet


décide d’ajouter un nouvel enregistrement à la table AGENCE. Ecrire la requête SQL
permettant d’effectuer cette opération en s’appuyant sur le tableau suivant :

CodeAg AdrAg TelAg


AG2500 25, Rue des jasmins Sousse 73200999

2) Le Fournisseur de Services Internet décide de baisser les prix des connexions ayant
un débit inférieur ou égale à 8 Mo de 10%. Ecrire la requête SQL correspondante
pour appliquer cette modification.

6
3) À la suite de la résiliation de l’abonnement numéro 5200 avec le client ayant le
numéro de CIN "05588004", On décide de supprimer cet abonnement. Ecrire la
requête SQL correspondante.
4) Ecrire les requêtes SQL permettant d’afficher :
a) La liste des clients (NomCl et PreCl) dont le nom commence par la lettre B. à
l’affichage, les noms des colonnes seront remplacés par « Nom du client » et
« Prénom du client ».
b) La liste des agences (CodeAg et TelAg) situées à la ville de Tunis.
c) La liste des connexions dont le prix varie entre 200 et 400 dinars.
d) La liste des abonnements (NumAb, CinCl et DateAb) ayant été effectués durant
l’année 2023. Le résultat est trié par ordre croissant de la date d’abonnement.
e) La liste des abonnements (NumAb, CodeAg, CinCl) effectués par l’agence dont
le code est « AG120 ».
f) La liste des clients (CinCl, NomCl, PreCl) ayant des abonnements d’un débit de
12 Mo.
g) Afficher le nombre d’abonnements par client.
h) Quelles sont les agences ayant effectuées plus que 100 abonnements durant
l’année 2022. On affichera le code de l’agence ainsi que l’adresse.

Vous aimerez peut-être aussi