bts blanc du 21.mars.2007 - dossier SQL (éléments de correction)

(actualisé le ) par Fred Le Meur

Promo 2005-2007 - Dossier EdC SQL - bts blanc du 21.mars.2007

Éléments de correction :

 QUESTION 3.1 : Indiquer si l’on peut obtenir par une requête la liste des pages qui n’ont jamais été consultées, et pourquoi.

  • Le principe de la table "Log" est de garder les historiques des accès aux pages. Une page jamais demandée n’y figure donc pas.

 QUESTION 3.2.a : Nombres de consultations par page web, triés par ordre décroissant.

SELECT chemin_page_web, count(*)
FROM log
GROUP BY chemin_page_web
ORDER BY 2 DESC
 ;

 QUESTION 3.2.b : Nombres de consultations par pays d’origine, en précisant son nom.

SELECT nom_pays, count(*)
FROM plages_ip, pays, log
WHERE ip_acces >= ip_debut
AND ip_acces <= ip_fin
AND plages_ip.code_pays = pays.code_pays
GROUP BY nom_pays
 ;

 QUESTION 3.3 : Expliquer pourquoi l’adresse IP est représentée sous forme numérique entière de 32 bits et non pas sous la forme alphanumérique.

  • Le choix de ce type se comprend par la nécessité de faire des comparaisons de valeurs (présence d’une adresse IP dans les plages de valeur de "Plages-Ip" ce que ne permet pas la notation décimale stockée sous forme alphanumérique.
  • On acceptera une justification faisant appel seulement à un problème de taille de données.

QUESTION 3.4 : Rédiger la requête SQL qui donne à l’application le droit d’accès en lecture sur la table "Log".

GRANT SELECT ON Log TO statacces ;