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

Questa guida rapida mostra come eseguire operazioni di base in Spanner utilizzando la consoleGoogle Cloud . In questa guida rapida imparerai a:

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

Per informazioni sul costo dell'utilizzo di Spanner, consulta la pagina 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 deve 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 tuo progetto.

  8. Crea un'istanza

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

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

      Vai a Spanner

    2. Seleziona o crea un Google Cloud progetto, 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 Assegna 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 istanze 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 indicazioni per la scelta di un dialetto, consulta Interfaccia PostgreSQL. Se hai selezionato GoogleSQL, definirai lo schema nel campo di testo Definisci lo schema nella sezione successiva di questa guida rapida.

      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 gli aggiornamenti dello schema. Al termine dell'aggiornamento, la pagina avrà il seguente aspetto:

      GoogleSQL

      La pagina Panoramica aggiornata.

      PostgreSQL

      La pagina Panoramica aggiornata.

      Tieni presente che PostgreSQL converte il nome della tabella in lettere minuscole.

    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 Singers.

      Nella console Google Cloud viene visualizzata la pagina Schema della tabella Singers.

    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 visualizza la pagina Spanner Studio della tabella Singers con una nuova scheda di query che contiene le istruzioni INSERT e SELECT che modifichi per inserire una riga nella tabella Singers e visualizzare il risultato dell'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 della dichiarazione INSERT e la clausola WHERE della dichiarazione 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 tabella. La tabella Singers ora ha una riga:

      GoogleSQL

      I dati aggiornati della tabella Singers con una riga.

      PostgreSQL

      I dati aggiornati della tabella Singers con una riga.

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

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

    8. Modifica la clausola VALUES della dichiarazione INSERT e la clausola WHERE della dichiarazione 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 l'esecuzione delle istruzioni da parte di Spanner, la scheda Risultati indica di nuovo che la prima istruzione ha inserito una riga.

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

      GoogleSQL

      I dati della tabella Singers aggiornata con due righe.

      PostgreSQL

      I dati della tabella Singers aggiornata con due righe.

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

    1. Fai clic su Inserisci per aggiungere una riga.

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

    2. Modifica la clausola VALUES della dichiarazione INSERT del modello e la clausola WHERE della dichiarazione 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 del cognome è una stringa vuota, '', non un valore NULL.

    3. Fai clic su Esegui.

      Dopo l'esecuzione delle istruzioni da parte di Spanner, la scheda Risultati indica che la prima istruzione ha inserito una riga.

    4. Fai clic sul link 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 Singers con tre righe.

      PostgreSQL

      I dati aggiornati della tabella Singers 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 le istruzioni UPDATE e SET del modello che puoi modificare. Tieni presente che le clausole WHERE di entrambe le istruzioni indicano che la riga da aggiornare è quella con il valore della chiave primaria 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 tabella.

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

      GoogleSQL

      I dati della tabella Singers aggiornati con una riga aggiornata.

      PostgreSQL

      I dati della tabella Singers aggiornati 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, quindi fai clic su Elimina.
    2. Nella finestra di dialogo visualizzata, fai clic su Conferma.

      La tabella Cantanti ora ha due righe:

      GoogleSQL

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

      PostgreSQL

      I dati aggiornati della tabella Singers 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 ed eseguito un'istruzione SQL utilizzando l'editor di query.

    Esegui la pulizia

    Per evitare addebiti aggiuntivi al tuo account di 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 che contiene 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 inserendone il nome 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