Crea ed esegui query su un database utilizzando la console Google Cloud

Questa guida rapida illustra come eseguire operazioni di base in Spanner utilizzando la console Google Cloud. In questa guida rapida imparerai a:

  • Crea un'istanza di Spanner.
  • Crea un database.
  • Crea uno schema.
  • Inserire e modificare i dati.
  • Esegui una query.

Per informazioni sul costo dell'utilizzo di Spanner, consulta Prezzi.

Prima di iniziare

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

  6. (Facoltativo) L'API Spanner dovrebbe essere abilitata automaticamente. In caso contrario, attivalo manualmente:

    Abilita l'API Spanner
  7. Per ottenere le autorizzazioni necessarie per creare istanze e database, chiedi all'amministratore di concederti il ruolo IAM Amministratore Cloud Spanner (roles/spanner.admin) nel progetto.

Crea un'istanza

Quando utilizzi Spanner per la prima volta, devi creare un'istanza, ovvero un'allocazione delle risorse utilizzate dai database Spanner nell'istanza.

  1. Nella console Google Cloud, vai alla pagina Spanner.

    Vai a Spanner

  2. Seleziona o crea un progetto Google Cloud, se non l'hai ancora fatto.

  3. Nella pagina Spanner, fai clic su Crea un'istanza di cui è stato eseguito il provisioning.

    Se hai già utilizzato Spanner, vedrai la pagina Istanze di Spanner anziché la pagina del prodotto. Fai clic su Crea istanza.

  4. Nella pagina Dai un nome all'istanza, inserisci un nome per l'istanza, ad esempio Test Instance.

  5. L'ID istanza viene inserito automaticamente in base al nome dell'istanza, ad esempio test-instance. Modificalo, se necessario. Fai clic su Continua.

  6. Nella pagina Configura l'istanza, mantieni l'opzione predefinita Regionale e seleziona una configurazione dal menu a discesa.

    La configurazione dell'istanza determina la posizione geografica in cui le istanza vengono archiviate e replicate.

  7. Fai clic su Continua.

  8. Nella pagina Alloca capacità di calcolo, seleziona Unità di elaborazione (PU) e mantieni il valore predefinito di 1000 unità di elaborazione.

  9. Fai clic su Crea.

    La console Google Cloud mostra la pagina Panoramica dell'istanza che hai creato.

Crea un database

  1. Nella console Google Cloud, vai alla pagina Istanze Spanner.

    Vai a Istanze Spanner

  2. Fai clic sull'istanza che hai creato, ad esempio Test Instance.

  3. Nella pagina Panoramica dell'istanza che si apre, fai clic su Crea database.

  4. Per il nome del database, inserisci un nome, ad esempio example-db.

  5. Seleziona un dialetto del database.

    Per informazioni sul supporto di PostgreSQL e sulle indicazioni per la scelta di un dialetto, consulta l'interfaccia PostgreSQL. Se hai selezionato GoogleSQL, dovrai definire lo schema nel campo di testo Definisci lo schema nella sezione successiva di questa guida introduttiva.

    La pagina di creazione del database ora ha il seguente aspetto:

    La finestra di creazione del database aggiornata.

  6. Fai clic su Crea.

    La console Google Cloud mostra la pagina Panoramica del database che hai creato.

Crea uno schema per il tuo database

  1. Nel menu di navigazione, fai clic su Spanner Studio.

  2. Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la scheda dell'editor vuota.

  3. Digita:

    GoogleSQL

    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 (
      BirthDate  TIMESTAMPTZ,
      SingerId   BIGINT PRIMARY KEY,
      FirstName  VARCHAR(1024),
      LastName   VARCHAR(1024),
      SingerInfo BYTEA
    );
    
  4. Fai clic su Esegui.

    La console Google Cloud torna alla pagina Panoramica del database e mostra che sono in corso aggiornamenti dello schema. Al termine dell'aggiornamento, la pagina sarà simile alla seguente:

    GoogleSQL

    La pagina Panoramica aggiornata.

    PostgreSQL

    La pagina Panoramica aggiornata.

    Tieni presente che PostgreSQL converte il nome della tabella in minuscolo.

Inserire e modificare i dati

La console Google Cloud fornisce un'interfaccia per inserire, modificare ed eliminare i dati.

Inserisci i dati

  1. Nell'elenco delle tabelle nella pagina Panoramica del database, fai clic sulla tabella Cantanti.

    La console Google Cloud mostra la pagina Schema della tabella Cantanti.

  2. Nel menu di navigazione, fai clic su Dati per visualizzare la pagina Dati della tabella Cantanti.

  3. Fai clic su Inserisci.

    La console Google Cloud mostra la pagina di Spanner Studio della tabella Cantanti con una nuova scheda di query contenente istruzioni INSERT e SELECT che puoi modificare per inserire una riga nella tabella Cantanti e visualizzare il risultato di quell'inserimento:

    GoogleSQL

      -- 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>;
    

    Tieni presente che PostgreSQL converte i nomi delle colonne in minuscolo.

  4. Modifica la clausola VALUES dell'istruzione INSERT e la clausola WHERE dell'istruzione SELECT:

    GoogleSQL

      -- 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. Fai clic su Esegui.

    Spanner esegue le istruzioni. Al termine, la scheda Risultati indica che la prima istruzione ha inserito una riga e fornisce un link per visualizzare i dati della tabella.

  6. Nella scheda Risultati, fai clic sul link alla tabella. La tabella Cantanti ora contiene una riga:

    GoogleSQL

    I dati aggiornati della tabella Cantanti con una riga.

    PostgreSQL

    I dati aggiornati della tabella Cantanti con una riga.

  7. Fai clic su Inserisci per aggiungere un'altra riga.

    La console Google Cloud mostra di nuovo la pagina Spanner Studio della tabella Cantanti con una nuova scheda di query contenente le stesse istruzioni INSERT e SELECT.

  8. Modifica la clausola VALUES dell'istruzione INSERT e la clausola WHERE dell'istruzione SELECT:

    GoogleSQL

      -- 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. Fai clic su Esegui.

    Dopo che Spanner esegue le istruzioni, la scheda Risultati indica di nuovo che la prima istruzione ha inserito una riga.

  10. Fai clic sul link della tabella. La tabella Cantanti ora contiene due righe:

    GoogleSQL

    I dati aggiornati della tabella Cantanti con due righe.

    PostgreSQL

    I dati aggiornati della tabella Cantanti con due righe.

Puoi anche inserire valori di stringa vuoti quando inserisci i dati.

  1. Fai clic su Inserisci per aggiungere una riga.

    Spanner mostra di nuovo la pagina Spanner Studio della tabella Cantanti con una nuova scheda di query contenente le stesse istruzioni INSERT e SELECT.

  2. Modifica la clausola VALUES dell'istruzione INSERT del modello e la clausola WHERE dell'istruzione SELECT:

    GoogleSQL

      -- 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;
    

    Tieni presente che il valore fornito per la colonna Cognome è una stringa vuota, '', non un valore NULL.

  3. Fai clic su Esegui.

    Dopo che Spanner esegue le istruzioni, la scheda Risultati indica che la prima istruzione ha inserito una riga.

  4. Fai clic sul link della tabella. La tabella Singers ora ha tre righe e la riga con il valore della chiave primaria 3 ha una stringa vuota nella colonna LastName:

    GoogleSQL

    I dati aggiornati della tabella Cantanti con tre righe.

    PostgreSQL

    I dati aggiornati della tabella Cantanti con tre righe.

Modifica dati

  1. Nella pagina Dati della tabella Cantanti, seleziona la casella di controllo nella riga con il valore della chiave primaria 3 e poi fai clic su Modifica.

    Spanner mostra la pagina Spanner Studio con una nuova scheda contenente istruzioni UPDATE e SET del modello che puoi modificare. Tieni conto che le clausole WHERE di entrambe le istruzioni indicano che la riga da aggiornare è quella con il valore della chiave principale 3.

    GoogleSQL

      -- 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. Modifica la clausola SET dell'istruzione UPDATE per aggiornare solo la data di nascita:

    GoogleSQL

      -- 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. Fai clic su Esegui.

    Spanner esegue le istruzioni. Al termine, la scheda Risultati indica che la prima istruzione ha aggiornato una riga e fornisce un link per visualizzare i dati della tabella.

  4. Nella scheda Risultati, fai clic sul link alla tabella.

    La riga aggiornata ora ha un valore per la data di nascita.

    GoogleSQL

    I dati aggiornati della tabella Cantanti con una riga aggiornata.

    PostgreSQL

    I dati aggiornati della tabella Cantanti con una riga aggiornata.

Elimina dati

  1. Nella pagina Dati della tabella Cantanti, seleziona la casella di controllo nella riga con 2 nella prima colonna e poi fai clic su Elimina.
  2. Nella finestra di dialogo visualizzata, fai clic su Conferma.

    La tabella Cantanti ora contiene due righe:

    GoogleSQL

    I dati della tabella Cantanti aggiornati con due righe; la riga per SingerId 2 non è più presente.

    PostgreSQL

    I dati aggiornati della tabella Cantanti con due righe; la riga per SingerId 2 non è più presente.

esegui una query

  1. Nella pagina Panoramica del database, fai clic su Spanner Studio nel menu di navigazione.

  2. Fai clic su Nuova scheda per creare una nuova scheda di query. Poi, inserisci la seguente query nell'editor di query:

    GoogleSQL

    SELECT * FROM Singers;
    

    PostgreSQL

    SELECT * FROM singers;
    
  3. Fai clic su Esegui.

    Spanner esegue la query. Al termine, la scheda Risultati mostra il risultato della query:

    GoogleSQL

    I risultati della query.

    PostgreSQL

    I risultati della query.

Complimenti! Hai creato correttamente un database Spanner e hai eseguito un'istruzione SQL utilizzando l'editor di query.

Esegui la pulizia

Per evitare addebiti aggiuntivi sul tuo account Fatturazione Cloud, elimina il database e l'istanza che hai creato. L'eliminazione di un'istanza comporta l'eliminazione automatica di tutti i database creati nell'istanza.

Elimina il database

  1. Nella console Google Cloud, vai alla pagina Istanze Spanner.

    Vai a Istanze Spanner

  2. Fai clic sul nome dell'istanza contenente il database che vuoi eliminare, ad esempio Test Instance.

  3. Fai clic sul nome del database che vuoi eliminare, ad esempio example-db.

  4. Nella pagina Dettagli database, fai clic su Elimina database.

  5. Conferma di voler eliminare il database inserendo il nome del database e facendo clic su Elimina.

Elimina l'istanza

  1. Nella console Google Cloud, vai alla pagina Istanze Spanner.

    Vai a Istanze Spanner

  2. Fai clic sul nome dell'istanza che vuoi eliminare, ad esempio Test Instance.

  3. Fai clic su Elimina istanza.

  4. Conferma di voler eliminare l'istanza inserendo il nome dell'istanza e facendo clic su Elimina.

Passaggi successivi