Support de Cours REQUÊTES TRANSACT-SQL DANS MICROSOFT SQL SERVER 2000 Stéphane

Support de Cours REQUÊTES TRANSACT-SQL DANS MICROSOFT SQL SERVER 2000 Stéphane N’GUESSAN Groupe Pigier – Abidjan Version 1.2 du 29/04/05 Pigier : Requêtes Transact-SQL dans Microsoft SQL Server 2000 Page 1    CHAPITRE 0 : INTRODUCTION .................................................4                CHAPITRE 1 : PRÉSENTATION DE TSQL................................5            !       "    #$     % &'( ) CHAPITRE 2 : UTILISATION DES OUTILS DE REQUÊTES .....9 *    '( ' +    $  '( ' ,, *    $!$  -  ,. *     $ ,/ CHAPITRE 3 : CRÉATION DES OBJETS DE BASES DE DONNEES .................................................................................14 01   !     , 2  !     , 2  ! $ ,3  $          !  4 ,5 CHAPITRE 4 : EXTRACTION DE DONNÉES...........................21 *       -  ., Pigier : Requêtes Transact-SQL dans Microsoft SQL Server 2000 Page 2 6 $   $$ '7 7& ., 6 $   $$ 89 .. 6 $   $$ :797 .. 6 $   $$ 9"79;< ./ &1     != %   ./ CHAPITRE 5 : REGROUPEMENT ET SYNTHÈSE DE DONNÉES .................................................................................24 6 $        !4 4  . 94  296*;< . '  1= *6&7 .) CHAPITRE 6 : JOINTURE DES TABLES.................................27 2  $ .3         .3      %  .5 CHAPITRE 7 : UTILISATION DES SOUS-REQUÊTES............29   =4$     >-  .+        >-  .+      $   -  /? CHAPITRE 8 : MODIFICATION DES DONNEES .....................32 0     /.       // '      // CHAPITRE 9 : PRESENTATION DES OBJETS DE PROGRAMMATION ..................................................................34 *      / Pigier : Requêtes Transact-SQL dans Microsoft SQL Server 2000 Page 3 *         @  / *        /3 *      $1 /3 Pigier : Requêtes Transact-SQL dans Microsoft SQL Server 2000 Page 4     Bienvenue dans ce cours de « Requêtes Transact-SQL dans SQL Server 2000 ». I) Objectifs Ce cours donne tous les éléments utiles pour créer une base de données dans SQL Server 2000 en utilisant uniquement les instructions du langage Transact-SQL. II) Certification Microsoft Ce cours est un pré requis nécessaire, mais pas suffisant pour passer les examens 70-228 (Administration de SQL Server 2000) et 70-229 (Implémentation de SQL Server 2000) de Microsoft. III) Conventions Dans ce document, nous utiliserons les conventions suivantes : - lorsque nous écrivons « cliquez sur Fichier->Ouvrir » cela signifie « Déroulez le menu Fichier et sélectionnez l’élément Ouvrir » ; - dans la syntaxe, les éléments entre crochets [ ] sont facultatifs ; les éléments entre accolades { } sont des options. Le séparateur d’options est le caractère |. IV) Informations Ce support de cours est libre de droits de reproduction. Vous pouvez le redistribuer sous toutes ses formes. Bien que toutes les précautions aient été prises lors de sa rédaction, nous déclinons toutes responsabilités concernant la fiabilité et l’exhaustivité du présent support. Nous vous saurions gré toutefois, de nous signaler toutes les imperfections que vous pourriez rencontrer pendant la lecture, de ce document. Bonne Lecture ! Stéphane N’GUESSAN snb@powernet.ci MCP Visual Basic .NET, MCDBA SQL Server 2000, MCSE 2000 Développeur SQL Server depuis 1999 Groupe Pigier - Abidjan Pigier : Requêtes Transact-SQL dans Microsoft SQL Server 2000 Page 5       Le langage TSQL (Transact Strutrured Query Language) permet de normaliser le développement d’applications liées aux Bases de Données. TSQL est une extension du langage SQL développé par IBM (International Business Machine) dans les années 1970. C’est un langage procédural par opposition à SQL qui est un langage déclaratif. I) Historique Le langage SQL est né à la suite des travaux du mathématicien Codd. Historiquement, les années suivantes sont importantes : - 1970 : IBM développe SQL - 1980 : Sybase développe TSQL - 1986 : Normalisation SQL/86 - 1989 : Normalisation SQL/89 - 1992 : Normalisation ANSI SQL/92 - 1996 : Microsoft adopte TSQL II) Les différents types d’instructions Le langage SQL possède trois types d’instructions : - le Langage de Définition des Données (LDD ou DDL en anglais) utilisé pour la création, la modification et la suppression des objets de base de données (tables, vues, etc.). Il utilise principalement les instructions CREATE, ALTER et DROP ; Exemple: CREATE DATABASE Test - le Langage de Manipulation des Données (LMD ou DML en anglais) qui permet de sélectionner, d’ajouter, de modifier et de supprimer des données dans les objets de base de données (tables, vues, etc.). Il utilise principalement les instructions SELECT, INSERT, UPDATE et DELETE ; Exemple: SELECT * FROM Produits - le Langage de Contrôle des Données (LCD ou DCL en anglais) utilisé pour la gestion des protections d’accès aux données. Il utilise principalement les instructions GRANT, DENY et REVOKE. Exemple : GRANT Select ON Produits TO Steve III) Les Directives Pigier : Requêtes Transact-SQL dans Microsoft SQL Server 2000 Page 6 Les directives indiquent comment traiter les instructions TSQL. Les principales directives sont : - USE « base de données » : permets de préciser sur quelle base de données vont porter les instructions qui suivent. Exemple : USE Master - GO : SQL Server interprète l'instruction GO comme un signal pour exécuter les instructions TSQL qui précèdent. Une commande GO termine un lot d'instructions TSQL. Certaines instructions TSQL doivent s’exécuter comme des lots, dans ce cas, l’utilisation de la commande GO est obligatoire. Exemple : USE Northwind SELECT * FROM Product GO - PRINT : est une instruction permettant de générer une ligne en sortie de procédure. Exemple : PRINT @@VERSION - EXEC[UTE] : est utilisée pour exécuter une fonction ou une procédure stockée. Exemple : EXEC getdate() IV) Éléments de syntaxe de TSQL Le langage TSQL comporte des éléments que l’on retrouve dans la plupart des langages évolués : - les types de données : ils déterminent la nature du contenu des objets tels que les colonnes, les variables, les paramètres, etc. Numérique : Ce type de données représente des valeurs entières ou décimales. ’Entier Int 4o De -2^31 à 2^31-1 Tinyint 1o De 0 à 255 Smallint 2o De -32768 à 32767 Bigint 8o De -2^63 à 2^63-1 ’Décimales Decimal supporte 38 digits Numeric idem à Decimal ’Monnétaire Money 8o ±922337 Milliards Smallmoney 4o ±21747 Milliards ’à virgule flottante Pigier : Requêtes Transact-SQL dans Microsoft SQL Server 2000 Page 7 Float 8o ±1.74E308 Real 4o ±3.49E38 ’Booleen Bit 1o valeur binaire (0 ou 1) ’Spécial UniqueIdentifier 16o Définit une colonne comme identificateur unique globale (GUID) Dates : Ce type de donnée représente une date ou une durée. DateTime 8o De 01/01/1753 à 31/12/9999 SmallDateTime 4o De 01/01/1900 à 06/06/2079 Caractères : Ce type de données est utilisé pour représenter les chaînes de caractères de longueur fixe ou variable. Char taille fixe n’excédant pas 8Ko Varchar taille variable n’excédant pas 8Ko Nchar unicode taille fixe n’excédant pas 4Ko Nvarchar unicode taille var. n’excédant pas 4Ko Text taille variable pouvant excéder 8Ko Ntext unicode taille var. pouvant excéder 4K Binaire : Ce type de données est très proche du type de données de caractères en termes de stockage et de structure, mais le contenu des données est traité sous forme d'une série de valeurs binaires. Binary taille fixe n’excédant pas 8Ko VarBinary taille variable n’excédant pas 8Ko Image taille variable pouvant excéder 8Ko - les identificateurs : ce sont les noms des objets tels que les bases de données, les tables, les colonnes, etc. o identificateurs standard Les identificateurs standard peuvent contenir de 1 à 128 caractères, notamment des lettres, des symboles (_, @ ou #) et des nombres. La première lettre doit être alphabétique et aucun espace n'est autorisé dans le nom. Ils ne doivent correspondre à aucun mot-clé du langage TSQL. o identificateurs délimités Un identificateur qui ne respecte pas une ou plusieurs des règles de mise en forme des identificateurs standard doit toujours être délimité. Les délimiteurs sont [ ] et " ". Exemple : SELECT * FROM "Liste des Etudiants" Pigier : Requêtes Transact-SQL dans Microsoft SQL Server 2000 Page 8 DROP DATABASE [123ABC] Le symbole @ commence le nom de toute variable locale et @@ désigne les variables globales. Le symbole # commence le nom de toute table temporaire et ## désigne les tables uploads/Industriel/ support-de-cours-tsql-2000.pdf

  • 47
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager