Home

Maintenance des Enregistrements

 

Importation et Exportation des Données

 

Importation des Données

L'une des techniques utilisées pour extraire des données dans une ou plusieurs tables se compose d'importation de données déjà existantes d'une autre base de données ou de tout autre fichier de données reconnaissables. Microsoft SQL Server fournit diverses techniques et des moyens de l'importation de données.

Le type le plus facile de données qui peuvent être importées dans SQL Server, et qui est disponible sur pratiquement tous les environnements de bases de données est le fichier texte. Presque chaque environnement de base de données vous permet d'importer un fichier texte, mais les données de ce fichier doivent être formatées correctement. Par exemple, les informations stockées dans le fichier doivent définir les colonnes comme visibles par un caractère qui sert de séparateur. Ce séparateur peut être le seul-devis, le double-devis ou n'importe quel caractère valide. Les données entre les guillemets sont considérées comme appartenant à un champ distinct. Outre cette information, la base de données aurait besoin de séparer les informations provenant de deux colonnes différentes. Là encore, un caractère valide doit être utilisé. La plupart des bases de données, notamment Microsoft SQL Server, reconnaissent la virgule comme un caractère. La dernière information que le fichier doit fournir est de distinguer chaque enregistrement d'un autre. Ceci est facilement pris comme la voiture de par la fin de ligne d'un enregistrement. Cela est également reconnu comme le retour du chariot.

Ces directives peuvent vous aider à créer manuellement un fichier texte qui peut être importé dans Microsoft SQL Server. En pratique, si vous souhaitez importer des données résidant sur une autre base de données, vous pouvez demander cette application pour créer la source de données. La plupart des applications peuvent faire et mettre en forme les données. C'est le cas pour les données que nous utiliserons dans l'exercice suivant : il s'agit de données qui résident sur une base de données Microsoft Access et étaient prêtes à être importées dans Microsoft SQL Server.

Après l'importation de données, vous devez vérifier et éventuellement la formater pour personnaliser ses champs.

Practical LearningEtude pratique : Importation de données depuis une source externe

  1. Téléchargez le fichier de texte Students et enregistrez-le sur votre disque dur
  2. Dans SQL Server Management Studio, cliquez avec le bouton droit de la souris sur le nœud de bases de données et cliquez sur nouvelle base de données...
  3. Tapez ROSH et appuyez sur la touche Entrée
  4. Dans l'Explorateur d'objets, cliquez avec le bouton droit de la souris sur ROSH, positionnez la souris sur des Tasks/tâches et cliquez sur Import Data/Importer les données
  5. Sur la première page de l'Assistant, cliquez sur Suivant
  6. Sur la deuxième page, cliquez sur la flèche de la zone de liste déroulante source de données et sélectionnez Flat File Source
  7. Sur le côté droit de nom de fichier, cliquez sur le bouton Parcourir/Browse
  8. Recherchez et sélectionnez le fichier Students.txt que vous avez enregistré
  9. Sur le côté gauche, cliquez sur les colonnes
  10. Sur le côté gauche, cliquez sur Advanced
  11. Comme la colonne 0 est sélectionnée, dans la liste de droite, cliquez sur le nom et tapez StudentID
  12. Cliquez sur le type de données, puis cliquez sur la flèche de la zone de liste déroulante. Sélectionnez le nombre entier non signé de 2 octets [DT_UI2]
  13. Dans la liste du milieu, cliquez sur chaque colonne et modifiez son nom dans la colonne de droite comme suit :

    Nom Type de données OutputColumnWidth
    StudentID Nombre entier non signé de deux octets [DT_UI2]  
    Prénom/First Name Chaîne Unicode [DT_WSTR] 20
    Nom/Last Name Chaîne Unicode [DT_WSTR] 20
    DateOfBirth Date de base de données [DT_DBDATE]  
    Sexe/Gender Chaîne Unicode [DT_WSTR] 12
    Adresse/Adress Chaîne Unicode [DT_WSTR]
    Ville/City Chaîne Unicode [DT_WSTR] 40
    État/State Chaîne Unicode [DT_WSTR] 2
    Code postal/ZipCope Chaîne Unicode [DT_WSTR] 12
    TélPersonnel/Home Phone Chaîne Unicode [DT_WSTR] 16
    EmailAddress Chaîne Unicode [DT_WSTR]  
    ParentsNames Chaîne Unicode [DT_WSTR]  
    SPHome Valeur booléenne [DT_BOOL]  
    EmrgName Chaîne Unicode [DT_WSTR]  
    EmrgPhone Chaîne Unicode [DT_WSTR] 16
  14. Pour voir la liste des colonnes, dans le cadre de la source de données, cliquez sur les colonnes

    Import
  15. Cliquez sur Next 3 fois :

    Import
  16. Cliquez deux fois sur Suivant
  17. Cliquez sur Terminer

    Import
  18. Cliquez sur Fermer

 

 
 
 
 

Maintenance record : Enregistrements de mise à jour

 

Introduction

La maintenance de l''enregistrement comprend l'affiche des enregistrements, la recherche d'un ou de plusieurs enregistrements, la modification d'un ou de plusieurs enregistrements ou la suppression d'un ou de plusieurs enregistrements. Ces opérations peuvent être effectuées visuellement ou par programmation à l'aide d'une commande DDL (Data Definition Language).

Practical LearningEtude pratique : Présentation de maintenance record

  1. Dans la barre d'outils standard, cliquez sur le bouton Nouvelle requête
  2. Pour créer une base de données, tapez ce qui suit :
    USE master;  
    GO    
    
    IF  EXISTS(SELECT name   	  
               FROM sys.databases    	 
               WHERE name = N'CeilInn2'  
    )  
    DROP DATABASE CeilInn2  
    GO    
    
    CREATE DATABASE CeilInn2  
    GO
    
    USE CeilInn2;  
    GO
    
    CREATE TABLE Rooms (      
        RoomID int identity(1, 1) NOT NULL,     
        RoomNumber nvarchar(10),    
        RoomType nvarchar(20) default N'Bedroom',    
        BedType nvarchar(40) default N'Queen',    
        Rate money default 75.85,  
        Available bit default 0 
     );  
    GO
    
    INSERT INTO Rooms(RoomNumber) VALUES(104); 
    GO
    
    INSERT INTO Rooms(RoomNumber, BedType, Rate, Available)            
    VALUES(105, N'King', 85.75, 1),  		      
                  (106, N'King', 85.75, 1);  
    GO
    
    INSERT INTO Rooms(RoomNumber, Available) VALUES(107, 1);  
    GO
    
    INSERT INTO Rooms(RoomNumber, BedType, Rate)            
              VALUES(108, N'King', 85.75); 
    GO
    
    INSERT INTO Rooms(RoomNumber, Available) VALUES(109, 1); 
    GO
    
    INSERT INTO Rooms(RoomNumber, RoomType, Rate, BedType, Available)  	 
              VALUES(110, N'Conference', 450.00, N'', 1); 
    GO
  3. Appuyez sur F5 pour exécuter

Sélectionner visuellement Records

Avant d'exécuter visuellement certaines opérations sur une table, vous devez d'abord sélectionner un ou plusieurs enregistrements. Dans la fenêtre de la table, positionnez la souris sur le bouton de gauche de l'enregistrement pour sélectionner un enregistrement, puis cliquez sur :

Pour sélectionner une plage d'enregistrements, cliquez sur le bouton gris de l'un des enregistrements, appuyez sur la touche et maintenez la touche Maj enfoncée, puis cliquez sur le bouton gris de l'enregistrement à l'autre extrême.

Pour sélectionner les enregistrements de manière aléatoire, sélectionnez un enregistrement, pressez et maintenez la touche Ctrl, puis cliquez sur le bouton gris de chaque enregistrement souhaité :

Pour sélectionner tous les enregistrements d'une table, cliquez sur le bouton gris sur la gauche de la première colonne :

Pour modifier visuellement un ou plusieurs enregistrements sur une table, tout d'abord l'ouvrir (vous cliquez avec le bouton droit de la souris sur la table dans l'Explorateur d'objets et cliquez sur Ouvrir) pour afficher ses enregistrements. Recherchez l'enregistrement et le champ que vous voulez travailler et effectuer l'opération souhaitée.

Mise à jour de tous les Records

La Mise à jour d'un enregistrement consiste à modifier sa valeur pour une colonne particulière. Pour visuellement mettre à jour un enregistrement, dans l'Explorateur d'objets, cliquez avec le bouton droit de la souris sur sa table (ou la vue, dans certains cas), puis cliquez sur Modifier Top 200 Rows. Cela ouvrirait le tableau comme une feuille de calcul, comme illustré ci-dessus. Recherchez la valeur sous l'en-tête de colonne souhaitée et modifiez la valeur comme bon vous semble.

Pour mettre à jour un enregistrement par programmation, utilisez une commande DDL (Data Definition Language). Si vous travaillez dans Microsoft SQL Server :

  • Dans l'Explorateur d'objets, à droite du tableau, placez la souris sur Script Table As-> UPDATE To->New Query Editor Window
  • Ouvrez une fenêtre de requête vide et tapez votre code

La commande DDL pour mettre à jour un enregistrement est UPDATE. La formule de base à utiliser est :

UPDATE TableName 
SET ColumnName = expression

Avec cette formule, vous devez spécifier le nom de la table impliquée comme étant le facteur TableName de notre formule. L'instruction SET vous permet de spécifier une nouvelle valeur Expression, pour le champ sous la colonne ColumnName.

Examinez le code suivant pour créer une nouvelle base de données nommée VideoCollection et pour ajouter un tableau nommé Vidéos :

CREATE DATABASE VideoCollection ;
GO 
USE VideoCollection ; 
GO 
CREATE TABLEVideos (
  VideoID INT NOT NULL IDENTITY(1,1), 
  VideoTitle nvarchar(120) NOT NULL,
  Director nvarchar (100) NULL, 
  YearReleased SMALLINT, 
  VideoLength nvarchar (30) NULL, 
  Rating nchar(6)
); 
GO 
INSERT INTO Videos(VideoTitle, Director, YearReleased, VideoLength) 
VALUES(N'A Few Good Men','Rob Reiner',1992,'138 Minutes') 
 
 
 
INSERT INTO Videos(VideoTitle, Director, VideoLength) 
VALUES(N'The Lady Killers', N'Joel Coen & Ethan Coen', N'104 Minutes') ; 
 
 
INSERT INTO Videos(VideoTitle, Director, YearReleased, VideoLength) 
VALUES(N'The Silence of the Lambs','Jonathan Demme',1991,'118 Minutes') ; 
 
INSERT INTO Videos(VideoTitle, Director, VideoLength) 
VALUES(N'The Distinguished Gentleman', N'James Groeling', N'112 Minutes') ; 
 
INSERT INTO Videos(VideoTitle, Director, VideoLength) 
VALUES(N'Ghosts of Mississippi', N'Rob Reiner', N'130 Minutes') ; 
GO

Imaginez que vous souhaitez indiquer que toutes ces vidéos sont notées R. Pour le faire, dans notre formule, spécifiez le nom de la table. Dans l'expression SET, spécifiez le nom de la colonne comme cote et attribuez-lui R sous la forme d'une chaîne de caractères. Cela serait effectué comme suit :

USE VideoCollection ; 
GO 
 
 
UPDATE Videos 
SET Rating = N'R '; 
GO 

Si vous utilisez l'instruction UPDATE comme ceci, elle agit sur tous les enregistrements. Le code ci-dessus devrait produire :

Maintenance record : Modification des enregistrements

 

Introduction

Modifier un enregistrement se compose de modifier une valeur dans un champ. Il pourrait être que le champ est vide, comme l'année © de la vidéo 'The Lady Killers' du tableau suivant. Il pourrait être que la valeur est erronée, telle que le directeur de la vidéo «The Gentleman unique» de ce tableau :

Titre vidéo Directeur © An Longueur Notation
Hommes d'honneur Rob Reiner 1992 138 Minutes R
Le silence des agneaux Jonathan Demme 1991 118 Minutes
Le gentleman unique James Groeling 112 Minutes R
The Killers Lady Joel Coen et Ethan Coen 104 Minutes R
Ghosts of Mississippi Rob Reiner 130 Minutes

Modification d'un enregistrement

Pour modifier un enregistrement, ouvrez d'abord le tableau pour afficher ses enregistrements. Localiser l'enregistrement, la colonne sur laquelle vous voulez travailler et recherchez la valeur que vous souhaitez modifier, puis modifiez-la.

Pour modifier un enregistrement, vous devez fournir un moyen à l'interprète de localiser l'enregistrement. Pour le faire, vous serez associé à l'opérateur WHERE dans une instruction UPDATE à l'aide de la formule suivante :

UPDATE TableName 
SET ColumnName = Expression 
WHERE Condition(s)

L'opérateur WHERE vous permet de spécifier comment l'enregistrement particulier concerné serait identifié. Il est très important, dans la plupart des cas, que le critère utilisé pourra identifier de manière unique l'enregistrement. Dans le tableau ci-dessus, imaginez que vous demandez à l'interprète de modifier l'année lancée en 1996 lorsque le directeur de la vidéo est Rob Reiner. L'instruction UPDATE serait écrite comme suit :

UPDATE vidéos 
SET YearReleased = 1996 
WHERE director = N'Rob Reiner ' ;

Dans le tableau ci-dessus, il existe au moins deux vidéos dirigés par Rob Reiner. Lorsque cette instruction est exécutée, tous les enregistrements vidéos dont le directeur est Rob Reiner seraient modifiés, qui compromettraient les enregistrements existants qui n'avaient pas besoin de ce changement. C'est où la colonne identité devient précieuse. Nous avons vu plus tôt que, lorsque vous l'utilisez avec la fonction IDENTITY, l'interprète ajoute une valeur unique pour chaque enregistrement. Vous pouvez ensuite utiliser cette valeur pour identifier un enregistrement particulier parce que vous êtes certain que la valeur est unique.

Voici un exemple utilisé pour spécifier l'année de copyright manquante d'un enregistrement particulier :

UPDATE vidéos 
SET YearReleased = 1996 
WHERE VideoID = 5; 
GO

Voici un exemple utilisé pour modifier le nom du directeur d'une vidéo particulière :

UPDATE Videos 
SET Director = N'Jonathan Lynn ' 
WHERE VideoTitle = N'The Distinguished Gentleman' ;

Practical LearningEtude pratique : La modification d'un enregistrement

  1. Appuyez sur Ctrl + A pour sélectionner tout (le code) dans la fenêtre et, mettre à jour un enregistrement, tapez ce qui suit :
    USE CeilInn2 ; 
    GO 
     
     
    UPDATE Rooms
    SET BedType = N'Queen' 
    WHERE RoomNumber = 108 ; 
    GO
     
    
  2. Appuyez sur F5 pour exécuter
  3. Appuyez sur Ctrl + A pour sélectionner le code dans la fenêtre et tapez le texte suivant :
    USE CeilInn2 ; 
    GO
     
     
    UPDATE Rooms
    SET Available = 0 
    WHERE RoomNumber = 109 ; 
    GO
  4. Appuyez sur F5 pour exécuter

Le résultat de la mise à jour de sortie

Après avoir effectué des modifications dans une table à l'aide de SQL, vous n'obtenez pas d'affichage visuel de ce qui s'est passé. Avec Transact-SQL, vous pouvez afficher temporairement le résultat de cette opération, ou vous pouvez l'enregistrer dans un tableau. Déjà, nous avons vu comment le faire lors de la création d'enregistrements. Vous suivez la même formule lors de la mise à jour des enregistrements. La formule est la suivante :

UPDATE TableName 
SET ColumnName = Expression 
OUTPUT INSERTED.Columns 
VALUES (Value_1, Value_2, Value_X)

Outre la formule que nous avons utilisée jusqu'ici, après l'expression SET, démarrez avec l'expression OUTPUT INSERTED, suivie d'une période. Si vous devez afficher toutes les colonnes de la table, ajoutez l'opérateur * . Dans le cas contraire, tapez INSERTED suivi d'une période, suivi du nom de la colonne que vous souhaitez afficher.

Practical LearningEtude pratique : Le résultat de la mise à jour de sortie

  1. Appuyez sur Ctrl + A pour sélectionner le code dans la fenêtre
  2. Pour mettre à jour certains enregistrements et afficher ceux qui ont été modifiés, tapez ce qui suit :
    USE CeilInn2 ;
    GO
     
     
    UPDATE Rooms
    SET Rate = 95.50 
    OUTPUT INSERTED.* 
    WHERE BedType = N'Queen'; 
    GO
  3. Appuyez sur F5 pour exécuter

Enregistrement de maintenance : Suppression d'enregistrements

 

Suppression de tous les Records

Si vous pensez que tous les enregistrements d'une table particulière sont, ou sont devenus inutiles, vous pouvez effacer l'ensemble de la table, qui aurait toujours garder sa structure. Pour supprimer tous les enregistrements d'une table, tout d'abord sélectionnez-les tous et appuyez sur la touche Suppr. Vous recevrez un avertissement :

Si vous souhaitez toujours supprimer les enregistrements, cliquez sur Oui. Si vous changez d'avis, cliquez sur Non.

La commande DDL pour effacer un tableau de tous les enregistrements est DELETE. Il utilise la formule suivante :

DELETE TableName ;

Lorsque cette instruction est exécutée, tous les enregistrements du facteur TableName pourraient être supprimés de la table. Soyez prudent en le faisant car une fois que les enregistrements ont été supprimés, vous ne pouvez pas les récupérer.

Suppression d'un enregistrement

Si vous découvrez qu'un enregistrement n'est pas/plus nécessaire, ou s'il est perdu, vous pouvez le supprimer d'une table. Pour supprimer un enregistrement d'une table, vous pouvez cliquer avec le bouton droit de la souris sur sa zone grise et cliquez sur Supprimer. Vous pouvez également tout d'abord sélectionner l'enregistrement et appuyez sur la touche Suppr. Vous recevrez un avertissement pour confirmer votre intention.

Suppression d'un enregistrement par programmation :

  • Dans l'Explorateur d'objets, vous pouvez, à droite du tableau, positionner la souris sur Script Table As->DELETE To -> New Query Editor Window (nouvelle fenêtre de l'éditeur de requête)
  • Ouvrez une fenêtre de requête vide et tapez votre code

Dans SQL, pour supprimer un enregistrement, utilisez l'instruction DELETE FROM associée à l'opérateur WHERE. La formule à suivre est la suivante :

DELETE FROM TableName 
WHERE Condition(s)

Le facteur TableName est utilisé pour identifier une table dont les enregistrements devraient être supprimés.

Le facteur Condition(s) vous permet d'identifier un enregistrement ou un groupe d'enregistrements qui transporte un critère. Une fois de plus, assurez-vous que vous êtes précis dans vos critères de sorte que vous ne supprimerez pas les mauvais enregistrements.

Voici un exemple utilisé pour supprimer un enregistrement particulier de la table :

DELETE FROM Videos 
WHERE VideoTitle = N'The Lady Killers' ;

Voici un exemple qui permet d'effacer la table de toutes les vidéos :

DELETE FROM Videos ;

Les résultats de la suppression de sortie

Lorsque certains record (s) ont (avaient) été supprimés, l'opération est effectuée dans les coulisses et vous ne voyez pas le résultat. Si vous souhaitez voir la liste des enregistrements qui ont été supprimés, vous pouvez utiliser l'opérateur de sortie pour afficher le résultat. Pour afficher la liste des enregistrements d'une table qui a été complètement vidée, vous pouvez utiliser la formule suivante :

DELETE FROM TableName 
OUTPUT DELETED.Columns

L'expression OUTPUT INSERTED suit la description que nous avons vue pour la mise à jour d'enregistrement. Voici un exemple :

USE VideoCollection6 ; 
GO 
 
 
DELETE FROM Videos 
OUTPUT deleted.*
GO

Pour afficher la liste des dossiers qui ont été supprimés selon une condition, utilisez la formule suivante :

DELETE FROM TableName 
OUTPUT DELETED.Columns 
WHERE Condition(s)

Voici un exemple :

USE VideoCollection6 ; 
GO 
 
 
DELETE FROM Videos
OUTPUT deleted.* 
WHERE YearReleased IS NULL ; 
GO

Practical LearningEtude pratique : Fin de la leçon

  1. Fermez la fenêtre de requête sans enregistrer le fichier.
  2. Dans l'Explorateur d'objets, sous le nœud de bases de données, cliquez avec le bouton droit de la souris sur WorldStatistics, puis cliquez sur Supprimer
  3. Dans la boîte de dialogue, cliquez sur OK
  4. Dans l'Explorateur d'objets, sous le nœud de bases de données, cliquez avec le bouton droit de la souris sur CeilInn2, puis cliquez sur Supprimer
  5. Dans la boîte de dialogue, cliquez sur OK
 
 
   
 

Précédent Copyright © 2010 Yevol.com Suivant