Criar e consultar um banco de dados usando o console do Google Cloud

Neste guia de início rápido, mostramos como executar operações básicas no Spanner usando o console do Google Cloud. No início rápido, você vai:

  • Criar uma instância do Spanner.
  • Cria um banco de dados.
  • Criar um esquema.
  • Insira e modifique dados.
  • executar uma consulta.

Para mais informações sobre o custo do uso do Spanner, consulte Preços.

Antes de começar

  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. Opcional: a API Spanner precisa ser ativada automaticamente. Caso contrário, ative-o manualmente:

    Ativar a API Spanner
  7. Para receber as permissões necessárias para criar instâncias e bancos de dados, peça ao administrador para conceder a você o papel do IAM de administrador do Cloud Spanner (roles/spanner.admin) no seu projeto.

Criar uma instância

Quando você usa o Spanner pela primeira vez, precisa criar uma instância, que é um alocação de recursos usados pelos bancos de dados do Spanner instância.

  1. No Console do Google Cloud, acesse a página Spanner.

    Acessar o Spanner

  2. Selecione ou crie um projeto do Google Cloud, caso ainda não tenha feito isso.

  3. Na página do Spanner, clique em Criar uma instância provisionada.

    Se você já tiver usado o Spanner antes, vai encontrar página Instâncias do Spanner em vez da página do produto. Clique em Criar instância.

  4. Na página Nomear a instância, insira um nome, como Instância de teste.

  5. O ID da instância é inserido automaticamente com base no nome da instância, por exemplo, instância-de-teste. Altere-a, se necessário. Clique em Continuar.

  6. Na página Configurar sua instância, mantenha a opção padrão Regional e selecione uma configuração no menu suspenso.

    A localização geográfica em que as instâncias são armazenadas e replicadas é determinada pela configuração da instância.

  7. Clique em Continuar.

  8. Na página Alocar capacidade de computação, selecione Unidades de processamento (PUs) e mantenha o valor padrão de 1.000 unidades de processamento.

  9. Clique em Criar.

    O console do Google Cloud exibe a página Visão geral da instância. que você criou.

Criar um banco de dados

  1. No console do Google Cloud, acesse a página Instâncias do Spanner.

    Acessar "Instâncias do Spanner"

  2. Clique na instância que você criou, por exemplo, Instância de teste.

  3. Na página "Informações gerais" da instância que abrir, clique em Criar banco de dados.

  4. Para o nome do banco de dados, insira um nome, como example-db.

  5. Selecione um dialeto de banco de dados.

    Para informações sobre o suporte ao PostgreSQL e orientações sobre como escolher um dialeto, consulte a Interface PostgreSQL. Se você selecionou "GoogleSQL", defina o esquema no campo de texto Definir seu esquema na próxima seção deste guia de início rápido.

    A página de criação de banco de dados ficará assim:

    Janela atualizada de criação do banco de dados.

  6. Clique em Criar.

    O console do Google Cloud mostra a página Visão geral do banco de dados que você criou.

Crie um esquema para o banco de dados

  1. No menu de navegação, clique em Spanner Studio.

  2. Na página do Spanner Studio, clique em Nova guia ou use o botão na guia "Editor".

  3. Insira o seguinte:

    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. Clique em Executar.

    O console do Google Cloud retorna à página Visão geral do banco de dados e mostra que as atualizações do esquema estão em andamento. Quando a atualização for concluída, a página ficará assim:

    GoogleSQL

    Página de visão geral atualizada.

    PostgreSQL

    A página de visão geral atualizada.

    Observe que o PostgreSQL converte o nome da tabela em letras minúsculas.

inserir e modificar dados

O console do Google Cloud oferece uma interface para inserir, editar e excluir dados.

Insira os dados

  1. Na lista de tabelas na página Visão geral do banco de dados, clique na tabela "Singers".

    O console do Google Cloud exibe a página Esquema da tabela Singers.

  2. No menu de navegação, clique em Dados para mostrar a página Dados da tabela "Singers".

  3. Clique em Inserir.

    O console do Google Cloud mostra a página do Spanner Studio da tabela Singers com uma nova guia de consulta que contém instruções INSERT e SELECT que você edita para inserir uma linha na tabela Singers e conferir o resultado dessa inserção:

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

    O PostgreSQL converte os nomes das colunas em minúsculas.

  4. Edite a cláusula VALUES da instrução INSERT e a cláusula WHERE da instrução 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. Clique em Executar.

    O Spanner executa as instruções. Quando terminar, a guia Resultados indica que a primeira instrução inseriu uma linha e fornece um link para visualizar os dados da tabela.

  6. Na guia Resultados, clique no link da tabela. A tabela Singers agora tem uma linha:

    GoogleSQL

    Os dados da tabela Singers atualizados com uma linha.

    PostgreSQL

    Os dados atualizados da tabela &quot;Singers&quot; com uma linha.

  7. Clique em Inserir para adicionar outra linha.

    O console do Google Cloud exibe novamente a página Spanner Studio da tabela Singers com uma nova guia de consulta que contém as mesmas instruções INSERT e SELECT.

  8. Edite a cláusula VALUES da instrução INSERT e a cláusula WHERE da instrução 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. Clique em Executar.

    Depois que o Spanner executa as instruções, a guia Resultados novamente indica que a primeira instrução inseriu uma linha.

  10. Clique no link tabela. A tabela Singers agora tem duas linhas:

    GoogleSQL

    Os dados da tabela Singers atualizados com duas linhas.

    PostgreSQL

    Os dados da tabela Singers atualizados com duas linhas.

Também é possível inserir valores de string vazios quando adicionar dados.

  1. Clique em Inserir para adicionar uma linha.

    O Spanner mostra novamente o Spanner Studio da tabela Singers página com uma nova guia de consulta que contém os mesmos INSERT e SELECT declarações.

  2. Edite a cláusula VALUES da instrução INSERT do modelo e a cláusula WHERE da instrução 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;
    

    O valor fornecido na coluna de sobrenome é uma string vazia, '', não um valor NULL.

  3. Clique em Executar.

    Depois que o Spanner executar as instruções, a guia Resultados indica que a primeira instrução inseriu uma linha.

  4. Clique no link tabela. A tabela Singers agora tem três linhas, e a linha com o valor da chave primária de 3 tem uma string vazia na coluna LastName:

    GoogleSQL

    Os dados atualizados da tabela Singers com três linhas.

    PostgreSQL

    Os dados da tabela Singers atualizados com três linhas.

Editar dados

  1. Na página Dados da tabela "Singers", marque a caixa de seleção na linha com o valor da chave primária de 3 e clique em Editar.

    O Spanner mostra a página Spanner Studio com uma nova guia contendo instruções UPDATE e SET do modelo que podem ser editadas. Observe que as cláusulas WHERE das duas instruções indicam que a linha a ser atualizada é a que tem o valor da chave primária de 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. Edite a cláusula SET da instrução UPDATE para atualizar somente a data de nascimento:

    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. Clique em Executar.

    O Spanner executa as instruções. Quando terminar, a guia Resultados indica que a primeira instrução atualizou uma linha e fornece um link para visualizar os dados da tabela.

  4. Na guia Resultados, clique no link da tabela.

    A linha atualizada agora tem um valor para a data de nascimento.

    GoogleSQL

    Os dados atualizados da tabela &quot;Singers&quot; com uma linha atualizada.

    PostgreSQL

    Os dados atualizados da tabela &quot;Singers&quot; com uma linha atualizada.

Excluir dados

  1. Na página Dados da tabela "Singers", marque a caixa de seleção da linha com 2 na primeira coluna e clique em Excluir.
  2. Na caixa de diálogo que aparece, clique em Confirmar.

    A tabela Singers agora tem duas linhas:

    GoogleSQL

    Os dados atualizados da tabela Singers com duas linhas. A linha para SingerId 2 desapareceu.

    PostgreSQL

    Os dados atualizados da tabela Singers com duas linhas. A linha para SingerId 2 desapareceu.

Executar uma consulta

  1. Na página Visão geral do banco de dados, clique em Spanner Studio no menu de navegação.

  2. Clique em Nova guia para criar uma nova guia de consulta. Em seguida, insira a seguinte consulta no editor de consultas:

    GoogleSQL

    SELECT * FROM Singers;
    

    PostgreSQL

    SELECT * FROM singers;
    
  3. Clique em Executar.

    O Spanner executa a consulta. Quando terminar, a guia Resultados exibirá o resultado da consulta:

    GoogleSQL

    Os resultados da consulta.

    PostgreSQL

    Os resultados da consulta.

Parabéns! Você criou um banco de dados do Spanner e executou uma instrução SQL usando o editor de consulta.

Limpar

Para evitar cobranças adicionais na conta de faturamento do Cloud, exclua o banco de dados e a instância que você criou. Ao excluir uma instância, você exclui automaticamente todos os bancos de dados criados na instância.

Excluir o banco de dados

  1. No console do Google Cloud, acesse a página Instâncias do Spanner.

    Acessar "Instâncias do Spanner"

  2. Clique no nome da instância com o banco de dados que você quer excluir, por exemplo, Instância de teste.

  3. Clique no nome do banco de dados que você quer excluir, por exemplo, example-db.

  4. Na página Detalhes do banco de dados, clique em Excluir banco de dados.

  5. Confirme que você quer excluir o banco de dados digitando o nome dele e clicando em Excluir.

Excluir a instância

  1. No console do Google Cloud, acesse a página Instâncias do Spanner.

    Acessar as instâncias do Spanner

  2. Clique no nome da instância que você quer excluir, por exemplo, Instância de teste.

  3. Clique em Excluir instância.

  4. Confirme que você quer excluir a instância digitando o nome dela e clicando em Excluir.

A seguir