APSQL

Modifier la structure en ajoutant des colonnes

La structure actuelle pose des soucis en ce qui concerne le retour des exemplaires empruntés. En effet la durée de location correspond elle à une durée effective de location ou bien prévisionnelle ?  Et comment est-il possible d’identifier les gens qui rendent leur location systématiquement en retard ? Pour pouvoir répondre à l’ensemble de ces contraintes, il est nécessaire de modifier la structure actuelle de la table Details en supprimant la colonne dureeLocation et en ajoutant les colonnes retourPrevueLe et retourEffectifLe. Ces deux colonnes sont de type datetime.

Le script suivant permet de réaliser cette modification:

USE Video;
go
-- Ajouter les colonnes 
ALTER TABLE Magasin.Details
  ADD retourPrevuLe datetime;
ALTER TABLE Magasin.Details
  ADD retourEffectifLe datetime;
-- Supprimer une colonne
ALTER TABLE Magasin.Details
  DROP COLUMN dureeLocation;
			

Autre point à prendre en compte : la qualité des exemplaires mis à disposition. Bien que le supports numériques offrent une meilleure qualité d’image, le support manipulé par de nombreuses personnes n’est pas toujours irréprochable au niveau de la qualité. La qualité de chaque exemplaire doit donc être conservée. Une colonne qualité de type char(2) est donc ajoutée à la table des exemplaires.  Les valeurs autorisées pour cette colonne sont : EX(excellent), TB(très bon), B(bon), M(moyen), F(faible), ME(médiocre).  Le niveau de qualité observé est à relativiser par rapport à la date d’achat d’un exemplaire. Il est donc nécessaire d’ajouter une seconde colonne nommée dateAchat et de type datetime, afin de stocker la date d’acquisition de l’exemplaire.

Le script suivant permet de réaliser ces modifications:

ALTER TABLE Magasin.Exemplaires
  ADD qualite char(2);
ALTER TABLE Magasin.Exemplaires
  ADD constraint ck_exemplaires_qualite
  CHECK (qualite IN ('EX','TB','B','M','F','ME'));
ALTER TABLE Magasin.Exemplaires
  ADD dateAchat datetime;			
			

Les manipulations depuis SQL Server Management Studio


Video: Ajouter et supprimer des colonnes