Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.
Créer et interroger une base de données à l'aide de Google Cloud Console

Créer et interroger une base de données à l'aide de Google Cloud Console

Ce guide de démarrage rapide explique comment effectuer des opérations de base dans Cloud Spanner à l'aide de la console Google Cloud. Vous allez :

  • Créer une instance Spanner
  • Créer une base de données
  • Créez un schéma.
  • Insérer et modifier des données
  • exécuter une requête.

Pour en savoir plus sur le coût d'utilisation de Spanner, consultez la section Tarifs.

Avant de commencer

  1. Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
  2. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  3. Assurez-vous que la facturation est activée pour votre projet Cloud. Découvrez comment vérifier si la facturation est activée sur un projet.

  4. Activez l'API Cloud Spanner

    Activer l'API

  5. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  6. Assurez-vous que la facturation est activée pour votre projet Cloud. Découvrez comment vérifier si la facturation est activée sur un projet.

  7. Activez l'API Cloud Spanner

    Activer l'API

Créer une instance

Lorsque vous utilisez Spanner pour la première fois, vous devez créer une instance, c'est-à-dire une allocation de ressources utilisées par les bases de données Spanner dans cette instance.

  1. Dans Google Cloud Console, accédez à la page Instances de Spanner.

    Accéder à la page Instances de Spanner

  2. Cliquez sur Créer une instance.

  3. Dans le champ "Nom de l'instance", saisissez un nom tel que Instance de test.

  4. L'ID d'instance est automatiquement saisi en fonction du nom de l'instance, par exemple test-instance. Modifiez-le si nécessaire.

  5. Dans Sélectionnez votre configuration, conservez l'option par défaut Régional et sélectionnez une configuration dans le menu déroulant.

    La configuration que vous choisissez détermine l'emplacement géographique où vos instances seront stockées et dupliquées.

  6. Dans Allouer la capacité de calcul, conservez la valeur par défaut de 1 000 unités de traitement.

    La page de création d'une instance ressemble maintenant à ceci:

    Page de création d'une instance mise à jour.

  7. Cliquez sur Créer.

    L'instance apparaît dans la liste des instances.

Créer une base de données

  1. Dans Google Cloud Console, accédez à la page Instances de Spanner.

    Accéder à la page Instances de Spanner

  2. Cliquez sur l'instance que vous avez créée, par exemple Test Instance.

  3. Sur la page "Présentation" de l'instance qui s'affiche, cliquez sur Créer une base de données.

  4. Pour le nom de la base de données, saisissez un nom tel que example-db.

  5. Sélectionnez un dialecte de base de données.

    Pour plus d'informations sur la compatibilité de PostgreSQL et sur le choix d'un dialecte, consultez la page Interface PostgreSQL. Si vous avez sélectionné le langage SQL standard de Google, vous devez définir le schéma dans le champ de texte Définir votre schéma de la section suivante de ce guide de démarrage rapide.

    Voici à quoi ressemble la page de création de votre instance :

    Fenêtre de création de base de données mise à jour.

  6. Cliquez sur Créer.

    Google Cloud Console affiche la page Présentation de la base de données que vous avez créée.

Créer un schéma pour votre base de données

  1. Dans la section "Tables" de la page Vue d'ensemble de la base de données, cliquez sur Créer une table.

  2. Sur la page Écrire des instructions LDD, saisissez:

    SQL standard Google

    CREATE TABLE Singers (
      SingerId   INT64 NOT NULL,
      FirstName  STRING(1024),
      LastName   STRING(1024),
      SingerInfo BYTES(MAX),
      BirthDate  DATE
    ) PRIMARY KEY(SingerId);
    

    PostgreSQL

    CREATE TABLE Singers (
      SingerId   BIGINT PRIMARY KEY,
      FirstName  VARCHAR(1024),
      LastName   VARCHAR(1024),
      SingerInfo BYTEA,
      BirthDate  TIMESTAMPTZ
    );
    
  3. Cliquez sur Envoyer.

    Google Cloud Console revient à la page Vue d'ensemble de la base de données et indique que des mises à jour du schéma sont en cours. Une fois la mise à jour terminée, la page se présente comme suit :

    SQL standard Google

    Page de présentation mise à jour.

    PostgreSQL

    Page de présentation mise à jour.

    Notez que PostgreSQL convertit le nom de la table en minuscules.

Insérer et modifier des données

Google Cloud Console fournit une interface permettant d'insérer, de modifier et de supprimer des données.

Insérer des données

  1. Dans la liste des tables de la page Vue d'ensemble de la base de données, cliquez sur la table Singers.

    Google Cloud Console affiche la page Schéma de la table Singers.

  2. Dans le menu de navigation, cliquez sur Data (Données) pour afficher la page Data (Données) de la table Singers.

  3. Cliquez sur Insert.

    Google Cloud Console affiche la page Requête de la table Singers avec un nouvel onglet de requête contenant les instructions INSERT et SELECT, que vous modifiez pour insérer une ligne dans la table Singers et afficher le résultat de cette insertion:

    SQL standard Google

      -- Add new values in the VALUES clause in order of the column list.
      -- Each value must be type compatible with its associated column.
    INSERT INTO
      Singers (SingerId,
        BirthDate,
        FirstName,
        LastName,
        SingerInfo)
    VALUES
      (<SingerId>, -- type: INT64
        <BirthDate>, -- type: DATE
        <FirstName>, -- type: STRING(1024)
        <LastName>, -- type: STRING(1024)
        <SingerInfo> -- type: BYTES(MAX)
        );
      -- Change values in the WHERE condition to match the inserted row.
    SELECT
      *
    FROM
      Singers
    WHERE
      SingerId=<SingerId>;
    

    PostgreSQL

      -- Add new values in the VALUES clause in order of the column list.
      -- Each value must be type compatible with its associated column.
    INSERT INTO
      singers (singerid,
        birthdate,
        firstname,
        lastname,
        singerinfo)
    VALUES
      (<singerid>, -- type: bigint
        <birthdate>, -- type: timestamp with time zone
        <firstname>, -- type: character varying
        <lastname>, -- type: character varying
        <singerinfo> -- type: bytea
        );
      -- Change values in the WHERE condition to match the inserted row.
    SELECT
      *
    FROM
      singers
    WHERE
      singerid=<singerid>;
    

    Notez que PostgreSQL convertit les noms de colonnes en minuscules.

  4. Modifiez la clause VALUES de l'instruction INSERT et la clause WHERE de l'instruction SELECT :

    SQL standard Google

      -- Add new values in the VALUES clause in order of the column list.
      -- Each value must be type compatible with its associated column.
    INSERT INTO
      Singers (SingerId,
        BirthDate,
        FirstName,
        LastName,
        SingerInfo)
    VALUES
      (1, -- type: INT64
        NULL, -- type: DATE
        'Marc', -- type: STRING(1024)
        'Richards', -- type: STRING(1024)
        NULL -- type: BYTES(MAX)
        );
      -- Change values in the WHERE condition to match the inserted row.
    SELECT
      *
    FROM
      Singers
    WHERE
      SingerId=1;
    

    PostgreSQL

      -- Add new values in the VALUES clause in order of the column list.
      -- Each value must be type compatible with its associated column.
    INSERT INTO
      singers (singerid,
        birthdate,
        firstname,
        lastname,
        singerinfo)
    VALUES
      (1, -- type: bigint
        NULL, -- type: timestamp with time zone
        'Marc', -- type: character varying
        'Richards', -- type: character varying
        NULL -- type: bytea
        );
      -- Change values in the WHERE condition to match the inserted row.
    SELECT
      *
    FROM
      singers
    WHERE
      singerid=1;
    
  5. Cliquez sur Exécuter.

    Spanner exécute les instructions. Lorsque vous avez terminé, l'onglet Résultats indique que la première instruction a inséré une ligne et fournit un lien pour afficher les données de la table.

  6. Dans l'onglet Résultats, cliquez sur le lien table. La table "Singers" (Chanteurs) comporte maintenant une ligne:

    SQL standard Google

    Données de la table "Singers" (Chanteurs) mises à jour, avec une ligne.

    PostgreSQL

    Données de la table "Singers" (Chanteurs) mises à jour, avec une ligne.

  7. Cliquez sur Insérer pour ajouter une autre ligne.

    Google Cloud Console affiche à nouveau la page Requête de la table Singers avec un nouvel onglet de requête contenant les mêmes instructions INSERT et SELECT.

  8. Modifiez la clause VALUES de l'instruction INSERT et la clause WHERE de l'instruction SELECT :

    SQL standard Google

      -- Add new values in the VALUES clause in order of the column list.
      -- Each value must be type compatible with its associated column.
    INSERT INTO
      Singers (SingerId,
        BirthDate,
        FirstName,
        LastName,
        SingerInfo)
    VALUES
      (2, -- type: INT64
        NULL, -- type: DATE
        'Catalina', -- type: STRING(1024)
        'Smith', -- type: STRING(1024)
        NULL -- type: BYTES(MAX)
        );
      -- Change values in the WHERE condition to match the inserted row.
    SELECT
      *
    FROM
      Singers
    WHERE
      SingerId=2;
    

    PostgreSQL

      -- Add new values in the VALUES clause in order of the column list.
      -- Each value must be type compatible with its associated column.
    INSERT INTO
      singers (singerid,
        birthdate,
        firstname,
        lastname,
        singerinfo)
    VALUES
      (2, -- type: bigint
        NULL, -- type: timestamp with time zone
        'Catalina', -- type: character varying
        'Smith', -- type: character varying
        NULL -- type: bytea
        );
      -- Change values in the WHERE condition to match the inserted row.
    SELECT
      *
    FROM
      singers
    WHERE
      singerid=2;
    
  9. Cliquez sur Exécuter.

    Une fois que Spanner a exécuté les instructions, l'onglet Results (Résultats) indique à nouveau que la première instruction a inséré une ligne.

  10. Cliquez sur le lien de table. La table "Singers" (Chanteurs) comporte maintenant deux lignes:

    SQL standard Google

    Données de la table "Singers" (Chanteurs) mises à jour et comportant deux lignes.

    PostgreSQL

    Données de la table "Singers" (Chanteurs) mises à jour et comportant deux lignes.

Vous pouvez également insérer des valeurs de chaîne vide lorsque vous saisissez des données.

  1. Cliquez sur Insérer pour ajouter une ligne.

    Spanner affiche à nouveau la page Requête de la table Singers avec un nouvel onglet de requête contenant les mêmes instructions INSERT et SELECT.

  2. Modifiez la clause VALUES de l'instruction INSERT du modèle et la clause WHERE de l'instruction SELECT :

    SQL standard Google

      -- Add new values in the VALUES clause in order of the column list.
      -- Each value must be type compatible with its associated column.
    INSERT INTO
      Singers (SingerId,
        BirthDate,
        FirstName,
        LastName,
        SingerInfo)
    VALUES
      (3, -- type: INT64
        NULL, -- type: DATE
        'Kena', -- type: STRING(1024)
        '', -- type: STRING(1024)
        NULL -- type: BYTES(MAX)
        );
      -- Change values in the WHERE condition to match the inserted row.
    SELECT
      *
    FROM
      Singers
    WHERE
      SingerId=3;
    

    PostgreSQL

      -- Add new values in the VALUES clause in order of the column list.
      -- Each value must be type compatible with its associated column.
    INSERT INTO
      singers (singerid,
        birthdate,
        firstname,
        lastname,
        singerinfo)
    VALUES
      (3, -- type: bigint
        NULL, -- type: timestamp with time zone
        'Kena', -- type: character varying
        '', -- type: character varying
        NULL -- type: bytea
        );
      -- Change values in the WHERE condition to match the inserted row.
    SELECT
      *
    FROM
      singers
    WHERE
      singerid=3;
    

    Notez que la valeur fournie pour la colonne du nom de famille est une chaîne vide, '', et non une valeur NULL.

  3. Cliquez sur Exécuter.

    Une fois que Spanner a exécuté les instructions, l'onglet Results (Résultats) indique que la première instruction a inséré une ligne.

  4. Cliquez sur le lien de table. La table Singers comporte désormais trois lignes, dont une, dont la valeur de clé primaire est 3, comporte une chaîne vide dans la colonne LastName:

    SQL standard Google

    Données de la table "Singers" (Chanteurs) mises à jour et comportant trois lignes.

    PostgreSQL

    Données de la table "Singers" (Chanteurs) mises à jour et comportant trois lignes.

Modifier les données

  1. Sur la page Données de la table "Singers" (Chanteurs), cochez la case sur la ligne contenant la valeur de clé primaire (3), puis cliquez sur Edit (Modifier).

    Spanner affiche la page Requête avec un nouvel onglet contenant les modèles UPDATE et SELECT que vous pouvez modifier. Notez que les clauses WHERE des deux instructions indiquent que la ligne à mettre à jour est celle qui possède la valeur de clé primaire 3.

    SQL standard Google

      -- Change values in the SET clause to update the row where the WHERE condition is true.
    UPDATE
      Singers
    SET
      BirthDate='',
      FirstName='Kena',
      LastName='',
      SingerInfo=''
    WHERE
      SingerId=3;
    SELECT
      *
    FROM
      Singers
    WHERE
      SingerId=3;
    

    PostgreSQL

      -- Change values in the SET clause to update the row where the WHERE condition is true.
    UPDATE
      singers
    SET
      birthdate=NULL,
      firstname='Kena',
      lastname='',
      singerinfo=NULL
    WHERE
      singerid='3';
    SELECT
      *
    FROM
      singers
    WHERE
      singerid='3';
    
  2. Modifiez la clause SET de l'instruction UPDATE pour ne mettre à jour que la date de naissance :

    SQL standard Google

      -- Change values in the SET clause to update the row where the WHERE condition is true.
    UPDATE
      Singers
    SET
      BirthDate='1961-04-01'
    WHERE
      SingerId=3;
    SELECT
      *
    FROM
      Singers
    WHERE
      SingerId=3;
    

    PostgreSQL

      -- Change values in the SET clause to update the row where the WHERE condition is true.
    UPDATE
      singers
    SET
      birthdate='1961-04-01 00:00:00 -8:00'
    WHERE
      singerid='3';
    SELECT
      *
    FROM
      singers
    WHERE
      singerid='3';
    
  3. Cliquez sur Exécuter.

    Spanner exécute les instructions. Lorsque vous avez terminé, l'onglet Résultats indique que la première instruction a mis à jour une ligne et fournit un lien pour afficher les données de la table.

  4. Dans l'onglet Résultats, cliquez sur le lien table.

    La ligne mise à jour comporte maintenant une valeur pour la date de naissance.

    SQL standard Google

    Données de la table "Singers" (Chanteurs) mises à jour avec une ligne mise à jour.

    PostgreSQL

    Données de la table "Singers" (Chanteurs) mises à jour avec une ligne mise à jour.

Supprimer des données

  1. Sur la page Données de la table "Singers" (Chanteurs), cochez la case sur la ligne contenant 2 dans la première colonne, puis cliquez sur Delete (Supprimer).
  2. Dans la boîte de dialogue qui s'affiche, cliquez sur Confirmer.

    La table "Singers" (Chanteurs) comporte maintenant deux lignes:

    SQL standard Google

    Données de la table "Singers" (Chanteurs) mises à jour et comportant deux lignes. La ligne correspondant à SingerId 2 a disparu.

    PostgreSQL

    Données de la table "Singers" (Chanteurs) mises à jour et comportant deux lignes. La ligne correspondant à SingerId 2 a disparu.

Exécuter une requête

  1. Sur la page Vue d'ensemble de la base de données, cliquez sur Requête dans le menu de navigation.

  2. Cliquez sur Nouvel onglet pour créer un onglet de requête. Saisissez ensuite la requête suivante dans l'éditeur de requête:

    SQL standard Google

    SELECT * FROM Singers;
    

    PostgreSQL

    SELECT * FROM singers;
    
  3. Cliquez sur Exécuter.

    Spanner exécute la requête. Lorsque vous avez terminé, l'onglet Résultats affiche le résultat de votre requête :

    SQL standard Google

    Résultats de la requête.

    PostgreSQL

    Résultats de la requête.

Félicitations ! Vous avez créé une base de données Spanner et exécuté une instruction SQL à l'aide de l'éditeur de requête.

Effectuer un nettoyage

Pour éviter des frais supplémentaires sur votre compte de facturation Cloud, supprimez la base de données et l'instance que vous avez créées. La suppression d'une instance entraîne la suppression automatique de toutes les bases de données qu'elle a créées.

Supprimer la base de données

  1. Dans Google Cloud Console, accédez à la page Instances de Spanner.

    Accéder à la page Instances de Spanner

  2. Cliquez sur le nom de l'instance contenant la base de données que vous souhaitez supprimer, par exemple Instance de test.

  3. Cliquez sur le nom de la base de données que vous souhaitez supprimer, par exemple example-db.

  4. Sur la page Détails de la base de données, cliquez sur Supprimer la base de données.

  5. Confirmez que vous souhaitez supprimer la base de données en saisissant son nom et en cliquant sur Supprimer.

Supprimer l'instance

  1. Dans Google Cloud Console, accédez à la page Instances de Spanner.

    Accéder à la page Instances de Spanner

  2. Cliquez sur le nom de l'instance que vous souhaitez supprimer, par exemple Instance de test.

  3. Cliquez sur Supprimer l'instance.

  4. Confirmez que vous souhaitez supprimer l'instance en saisissant son nom et en cliquant sur Supprimer.

Étapes suivantes