Operações Básicas de Dados em PostgreSQL

PostgreSQLBeginner
Pratique Agora

Introdução

Neste laboratório, exploraremos operações básicas de dados no PostgreSQL. O objetivo principal é aprender a manipular dados dentro de um banco de dados PostgreSQL usando comandos SQL fundamentais.

Começaremos conectando-nos ao banco de dados e criando uma tabela employees com colunas para ID, nome e departamento. Em seguida, aprenderemos como inserir dados na tabela usando a instrução INSERT INTO. Depois disso, abordaremos a consulta de dados com SELECT, a atualização de registros existentes e a exclusão de registros. Este laboratório oferece uma introdução prática às técnicas essenciais de gerenciamento de dados no PostgreSQL.

Este é um Lab Guiado, que fornece instruções passo a passo para ajudá-lo a aprender e praticar. Siga as instruções cuidadosamente para completar cada etapa e ganhar experiência prática. Dados históricos mostram que este é um laboratório de nível iniciante com uma taxa de conclusão de 88%. Recebeu uma taxa de avaliações positivas de 100% dos estudantes.

Inserir Dados em Tabelas

Nesta etapa, aprenderemos como inserir dados em tabelas no PostgreSQL. Inserir dados é uma operação fundamental para preencher seu banco de dados com informações. Abordaremos a sintaxe básica e forneceremos exemplos para ajudá-lo a entender o processo.

Antes de começarmos, certifique-se de ter o PostgreSQL instalado e em execução. Você pode se conectar ao seu servidor PostgreSQL usando a ferramenta de linha de comando psql.

Primeiro, vamos nos conectar ao banco de dados. Abra seu terminal e execute o seguinte comando:

sudo -u postgres psql

Agora que estamos conectados ao banco de dados, vamos criar uma tabela simples chamada employees se ela ainda não existir. Esta tabela armazenará informações sobre os funcionários, como seu ID, nome e departamento.

CREATE TABLE IF NOT EXISTS employees (
    id SERIAL PRIMARY KEY,
    name VARCHAR(50),
    department VARCHAR(50)
);

Esta instrução SQL cria uma tabela chamada employees com três colunas:

  • id: Um inteiro que se incrementa automaticamente com cada novo registro (usando SERIAL). É também a chave primária (primary key) da tabela.
  • name: Uma string (até 50 caracteres) para armazenar o nome do funcionário.
  • department: Uma string (até 50 caracteres) para armazenar o departamento do funcionário.

Agora, vamos inserir alguns dados na tabela employees. Inseriremos três registros de funcionários.

INSERT INTO employees (name, department) VALUES ('Alice Smith', 'Sales');
INSERT INTO employees (name, department) VALUES ('Bob Johnson', 'Marketing');
INSERT INTO employees (name, department) VALUES ('Charlie Brown', 'Engineering');

Cada instrução INSERT INTO adiciona uma nova linha à tabela employees. Especificamos o nome da tabela (employees) e as colunas nas quais estamos inserindo dados (name, department). A palavra-chave VALUES é seguida pelos dados reais que queremos inserir, entre parênteses.

Para verificar se os dados foram inseridos corretamente, podemos consultar a tabela employees usando a instrução SELECT.

SELECT * FROM employees;

Isso exibirá todas as linhas e colunas na tabela employees. Você deve ver os três registros de funcionários que acabamos de inserir. A saída deve ser semelhante a esta:

 id |     name      | department
----+---------------+------------
  1 | Alice Smith   | Sales
  2 | Bob Johnson   | Marketing
  3 | Charlie Brown | Engineering
(3 rows)
Output after inserting data in table

Você inseriu com sucesso dados em uma tabela PostgreSQL. Você pode continuar a inserir mais registros conforme necessário.

Finalmente, saia do shell psql digitando:

\q

Isso o retornará ao terminal.

Consultar Dados com SELECT

Nesta etapa, aprenderemos como consultar dados de tabelas no PostgreSQL usando a instrução SELECT. A instrução SELECT é a base para recuperar informações do seu banco de dados. Abordaremos a sintaxe básica, filtragem e ordenação para ajudá-lo a dominar a recuperação de dados.

Primeiro, certifique-se de estar conectado ao banco de dados. Se você ainda não estiver conectado, abra seu terminal e execute o seguinte comando:

sudo -u postgres psql

Vamos aprender como selecionar colunas específicas. Suponha que queremos recuperar apenas as colunas name e department.

SELECT name, department FROM employees;

Esta instrução retornará apenas as colunas name e department para todas as linhas na tabela employees. A saída deve ser semelhante a esta:

     name      | department
---------------+------------
 Alice Smith   | Sales
 Bob Johnson   | Marketing
 Charlie Brown | Engineering
(3 rows)

Agora, vamos adicionar uma cláusula WHERE para filtrar os resultados. Suponha que queremos recuperar apenas os funcionários que trabalham no departamento de 'Vendas'.

SELECT name, department FROM employees WHERE department = 'Sales';

A cláusula WHERE especifica uma condição que deve ser atendida para que uma linha seja incluída no conjunto de resultados. Neste caso, estamos selecionando apenas as linhas onde a coluna department é igual a 'Sales'. A saída deve ser:

     name      | department
---------------+------------
 Alice Smith   | Sales
(1 row)

Finalmente, vamos aprender como ordenar os resultados usando a cláusula ORDER BY. Suponha que queremos recuperar todos os funcionários, ordenados por seus nomes em ordem crescente.

SELECT name, department FROM employees ORDER BY name;

Esta instrução retornará todas as linhas da tabela employees, mas os resultados serão classificados alfabeticamente pela coluna name. A saída deve ser:

     name      | department
---------------+------------
 Alice Smith   | Sales
 Bob Johnson   | Marketing
 Charlie Brown | Engineering
(3 rows)

Para ordenar os resultados em ordem decrescente, você pode adicionar a palavra-chave DESC após o nome da coluna.

SELECT name, department FROM employees ORDER BY name DESC;

Isso classificará os resultados em ordem alfabética inversa.

Você agora aprendeu como consultar dados de uma tabela PostgreSQL usando a instrução SELECT, incluindo como selecionar colunas específicas, filtrar resultados usando a cláusula WHERE e ordenar resultados usando a cláusula ORDER BY.

Illustration for querying data in PostgreSQL

Finalmente, saia do shell psql digitando:

\q

Atualizar Registros Existentes

Nesta etapa, aprenderemos como atualizar registros existentes em uma tabela PostgreSQL usando a instrução UPDATE. Atualizar dados é essencial para manter as informações do seu banco de dados atuais e precisas. Abordaremos a sintaxe básica e forneceremos exemplos para ajudá-lo a entender o processo.

Primeiro, certifique-se de estar conectado ao banco de dados. Se você ainda não estiver conectado, abra seu terminal e execute o seguinte comando:

sudo -u postgres psql

Vamos atualizar o departamento de 'Alice Smith' para 'Recursos Humanos'.

UPDATE employees SET department = 'Human Resources' WHERE name = 'Alice Smith';

A instrução UPDATE modifica as linhas existentes em uma tabela. A cláusula SET especifica quais colunas atualizar e seus novos valores. A cláusula WHERE especifica quais linhas atualizar. Neste caso, estamos atualizando a coluna department para 'Recursos Humanos' para a linha onde a coluna name é igual a 'Alice Smith'.

Para verificar se a atualização foi bem-sucedida, podemos consultar a tabela employees.

SELECT * FROM employees WHERE name = 'Alice Smith';

Isso exibirá a linha para 'Alice Smith', e você deverá ver que a coluna department foi atualizada para 'Recursos Humanos'. A saída deve ser semelhante a esta:

 id |     name      |   department
----+---------------+------------------
  1 | Alice Smith   | Human Resources
(1 row)

Você também pode atualizar várias colunas de uma vez. Por exemplo, vamos atualizar o departamento de Bob Johnson para 'Vendas' e seu nome para 'Robert Johnson'.

UPDATE employees SET department = 'Sales', name = 'Robert Johnson' WHERE name = 'Bob Johnson';

Esta instrução atualiza as colunas department e name para a linha onde a coluna name é igual a 'Bob Johnson'.

Para verificar a atualização, consulte a tabela employees novamente.

SELECT * FROM employees WHERE name = 'Robert Johnson';

A saída deve ser:

 id |      name      | department
----+----------------+------------
  2 | Robert Johnson | Sales
(1 row)

É importante ter cuidado ao usar a instrução UPDATE, especialmente ao omitir a cláusula WHERE. Se você omitir a cláusula WHERE, a instrução UPDATE atualizará todas as linhas na tabela. Por exemplo:

UPDATE employees SET department = 'Unknown';

Esta instrução definiria a coluna department como 'Desconhecido' para cada linha na tabela employees. Seja muito cauteloso ao executar tal instrução.

Illustration for updating records in PostgreSQL

Você agora aprendeu como atualizar registros existentes em uma tabela PostgreSQL usando a instrução UPDATE.

Finalmente, saia do shell psql digitando:

\q

Apagar Registros

Nesta etapa, aprenderemos como excluir registros de uma tabela PostgreSQL usando a instrução DELETE. Excluir dados é uma operação importante para remover informações obsoletas ou incorretas do seu banco de dados. Abordaremos a sintaxe básica e forneceremos exemplos para ajudá-lo a entender o processo.

Primeiro, certifique-se de estar conectado ao banco de dados. Se você ainda não estiver conectado, abra seu terminal e execute o seguinte comando:

sudo -u postgres psql

Vamos excluir o registro de 'Charlie Brown' da tabela employees.

DELETE FROM employees WHERE name = 'Charlie Brown';

A instrução DELETE FROM remove linhas de uma tabela. A cláusula WHERE especifica quais linhas excluir. Neste caso, estamos excluindo a linha onde a coluna name é igual a 'Charlie Brown'.

Para verificar se a exclusão foi bem-sucedida, podemos consultar a tabela employees.

SELECT * FROM employees WHERE name = 'Charlie Brown';

Isso não deve retornar nenhuma linha, indicando que o registro de 'Charlie Brown' foi excluído. A saída deve ser:

 id | name | department
----+------+------------
(0 rows)

Você também pode excluir várias linhas de uma vez usando uma cláusula WHERE mais complexa. Por exemplo, se você tivesse vários funcionários no departamento de 'Marketing', você poderia excluir todos eles com uma única instrução:

DELETE FROM employees WHERE department = 'Marketing';

É crucial ter extremo cuidado ao usar a instrução DELETE, especialmente ao omitir a cláusula WHERE. Se você omitir a cláusula WHERE, a instrução DELETE excluirá todas as linhas da tabela. Por exemplo:

DELETE FROM employees;

Esta instrução excluiria todas as linhas na tabela employees, efetivamente esvaziando a tabela. Tenha absoluta certeza de que deseja excluir todas as linhas antes de executar tal instrução.

Você agora aprendeu como excluir registros de uma tabela PostgreSQL usando a instrução DELETE.

Illustration for record deletion in PostgreSQL

Verifique a tabela employees para verificar se a exclusão foi bem-sucedida.

SELECT * FROM employees;

A saída deve ser:

 id | name | department
----+------+------------
(0 rows)

Finalmente, saia do shell psql digitando:

\q

Resumo

Neste laboratório, cobrimos operações fundamentais de dados em PostgreSQL, com foco na inserção de dados em tabelas. Começamos conectando-nos ao banco de dados usando a ferramenta de linha de comando psql. Em seguida, criamos uma tabela employees com colunas para id, name e department, especificando id como a chave primária com funcionalidade de auto-incremento.

Finalmente, inserimos três registros de funcionários na tabela employees usando a instrução INSERT INTO, especificando o nome da tabela e as colunas para inserir dados, juntamente com os valores correspondentes para cada registro. Isso demonstrou a sintaxe básica para preencher uma tabela PostgreSQL com dados.