Comandos postgres
PostgreSQL trabalha com o conceito de “role”, similar ao usado nos sistemas Unix/Linux para gerenciar usuários e permissões. A instalação do servidor vai criar um usuário padrão postgres
, por tanto, iremos logar com essas credenciais e, depois disso, acessar o prompt para gerenciar os nossos bancos de dados com o comando psql
:
$ sudo -i -u postgres
$ psql
psql (10.10 (Ubuntu 10.10-0ubuntu0.18.04.1))
Type "help" for help.postgres=#
Para sair do prompt, digitamos \q
:
postgres=# \q
E, para retornar pro nosso usuário no sistema (lembre-se que tínhamos aberto uma sessão com o usuário posgres
) basta digitar Ctrl+d
.
Criando um banco de dados
Uma vez logados com o usuário postgres
, vamos criar um banco de dados para testes e vamos acessar o prompt de comandos para começar o gerenciamento básico de tabelas e dados:
$ createdb teste
Perceba que o prompt recebe o nome do banco de dados que estamos usando nesse momento:
$ psql -d teste
psql (10.10 (Ubuntu 10.10-0ubuntu0.18.04.1))
Type "help" for help.teste=#
Podemos listar os bancos de dados no servidor com o comando \l
:
teste=# \l...
teste | postgres | UTF8 | C.UTF-8 | C.UTF-8 |
(4 rows)
Criando a nossa primeira tabela
As tabelas organizam os dados em um banco relacional. Antes do que nada, precisamos criar alguma tabela:
teste=# CREATE TABLE aluno (
ra serial PRIMARY KEY,
nome varchar (120) NOT NULL
);
CREATE TABLE
Listamos as nossas tabelas com o comando \dt
:
teste=# \dt
List of relations
Schema | Name | Type | Owner
--------+-------+-------+----------
public | aluno | table | postgres
(1 row)
E obtemos uma descrição da estrutura das mesmas com o comando \d
:
teste=# \d aluno
Seja CRUD
Agora você pode começar a experimentar e praticar as suas destrezas na linguagem SQL, todos aqueles inserts, selects e delets da vida:
teste=# INSERT INTO aluno VALUES (1900543, 'João');
INSERT 0 1teste=# SELECT * FROM aluno;
ra | nome
---------+------
1900543 | João
(1 row)teste=# DELETE FROM aluno WHERE ra = 1900543;
DELETE 1teste=# SELECT * FROM aluno;
ra | nome
----+------
(0 rows)
Com esse artigo encerramos essa série sobre três dos principais SGBD open source da atualidade: MySQL, SQLite e PostgreSQL. Espero ter ajudado você a dar esses seus primeiros passos e motivado você para seguir aprendendo sobre banco de dados relacionais e sobre essa ferramenta essencial que é a linha de comandos.