PostgreSQL é um dos sistemas de banco de dados mais populares-relativos de objetos. É um software gratuito e de código aberto que estende a linguagem SQL com recursos adicionais para lidar com as cargas de trabalho de dados complexas. Pode funcionar com vários tipos de dados, confiáveis e seguros. Saiba mais sobre os recursos do PostgreSQL.
Neste guia, aprenderemos mais sobre a criação de tabelas em um esquema no PostgreSQL.
Esquemas em PostgreSQL
Um banco de dados PostGresql pode conter um ou mais esquemas nomeados, cada esquema contendo tabelas.
O mesmo nome de objeto pode ser atribuído em vários esquemas sem conflito. Por exemplo, o seguinte esquema/árvore de tabela é válido:
Você pode pensar em esquemas como diretórios no nível do sistema operacional. A diferença é que não pode haver esquemas aninhados. Saiba mais detalhadamente sobre o esquema na documentação do PostgreSQL.
Pode haver vários motivos para implementar os esquemas:
Tabelas no PostgreSQL
Qualquer banco de dados relacional consiste em várias tabelas relacionadas, cada uma composta por linhas e colunas. PostgreSQL vem com várias tabelas embutidas que contêm várias informações do sistema. No entanto, também podemos criar novas tabelas sob bancos de dados e esquemas definidos pelo usuário.
Pré-requisitos:
Para executar as etapas demonstradas neste guia, você precisará dos seguintes componentes:
Para os fins deste guia, usaremos PostGres Para executar todas as ações no PostgreSQL.
Criando mesas em um esquema
Criando um banco de dados de demonstração
Como mencionado anteriormente, existem esquemas em um banco de dados. Para fins de demonstração, criamos um banco de dados dummy, evitando a interrupção em qualquer banco de dados existente.
Acesse o shell postgreSql como PostGres:
$ sudo -i -u pós -gres psqlCrie um novo banco de dados Demo_DB:
$ Crie banco de dados Demo_db;Verifique se o banco de dados foi criado com sucesso:
$ \ lFinalmente, conecte-se ao banco de dados recém-criado:
$ \ Connect Demo_DB;O esquema público
Qualquer novo banco de dados no PostgreSQL vem com um esquema padrão - público. Se você tentar criar um objeto sem especificar o nome do esquema, o esquema público será selecionado por padrão.
O comando a seguir imprime todo o esquema disponível no banco de dados PostGresql:
$ \ dnComo alternativa, também podemos usar a seguinte consulta SQL:
$ SELECT * de pg_catalog.pg_namespace;Criando um novo esquema
Para criar um novo esquema sob um banco de dados específico, a estrutura de comando é a seguinte:
$ Crie esquema;Após a regra, vamos criar um novo esquema demo_schema:
$ CREATE SCHEMA Demo_schema;Verifique a lista de esquemas para verificação:
$ \ dnCriando uma mesa em um esquema
Agora que temos o esquema de destino criado, podemos preenchê -lo com mesas.
A sintaxe para criar uma tabela é a seguinte:
CRIAR A TABELA . (Aqui:
Para demonstração, criamos uma tabela simples:
Crie tabela demo_schema.Demo_table (Aqui:
Podemos verificar a existência da tabela usando a seguinte consulta:
$ SELECT * de Demo_schema.Demo_table;Inserindo dados na tabela
Com a tabela no lugar, agora podemos inserir alguns valores:
Insira em Demo_schema.Demo_table (nome, ID)Verifique o conteúdo da tabela:
$ SELECT * de Demo_schema.Demo_table;Gerenciamento de esquema
Permissões de esquema
Com a ajuda da permissão do esquema, podemos gerenciar qual função pode desempenhar qual ação em um esquema específico. De todos os privilégios possíveis, os esquemas apenas apoiam Criar e usar.
Para atualizar a permissão do esquema para uma função específica, a estrutura de comando é a seguinte:
$ Grant em esquema para;Para revogar a permissão do esquema para uma função específica, a estrutura de comando é a seguinte:
$ Revogar no esquema para;Verifique a alteração usando o seguinte comando:
$ \ dn+Alter Propriedades do esquema
Com a ajuda do Alter esquema declaração, podemos modificar as várias propriedades de um esquema. Por exemplo: propriedade, nome do esquema, etc.
Para alterar o nome do esquema, use a seguinte consulta:
$ Alter renomear o esquema para;Para mudar a propriedade de um esquema, use a seguinte consulta:
$ Alter proprietário de esquema para;Observe que, para alterar a propriedade, o usuário atual deve ter o CRIAR permissão para o esquema.
Excluindo um esquema
Se um esquema não for mais necessário, podemos excluí -lo usando o DERRUBAR consulta:
$ Schema Drop SchemaSe o esquema contiver algum objeto, precisamos do CASCATA modificador:
$ Drop Schema Cascade;Gerenciamento de tabela
Permissões de tabela
Como o esquema, cada tabela também vem com gerenciamento de permissão, definindo que ação uma função pode desempenhar na tabela.
Para verificar as permissões de uma tabela, use o seguinte comando no PSQL:
$ \ dpAlterar as propriedades da tabela
Com a ajuda do ALTERAR A TABELA declaração, podemos modificar os inúmeros aspectos de uma tabela já existente.
Por exemplo, para soltar uma coluna, a consulta se parece com a seguinte:
Coluna de gotas de tabela de altera;Para adicionar uma nova coluna, podemos usar a seguinte consulta:
$ Alter tabela add colun;Também podemos definir a compactação para uma coluna específica:
$ ALTER CONFIGURAÇÃO COMPRESSÃO DE CONFIGURAÇÃO DE COLUMA;Excluindo uma tabela
Para excluir uma tabela de um esquema, podemos usar a consulta de tabela de gota:
$ Tabela de gota;Observe que, diferentemente dos esquemas, o Mesa de soltar A consulta não produzirá um erro se a tabela está vazia ou não.
Conclusão
Neste guia, demonstramos como criar as tabelas em um esquema no PostgreSQL. Criamos um esquema dummy dentro de um banco de dados dummy e criamos uma tabela dentro do esquema. Este guia também foi exibido sobre como gerenciar as várias propriedades de esquemas e tabelas.
Para uma melhor integridade dos dados, você pode configurar uma replicação lógica PostGresql. Para manter o banco de dados PostGresql saudável, você pode configurar o Autovacuum para limpar as tuplas mortas que são deixadas pelos registros excluídos.
Para mais guias PostGresql, consulte a subcategoria PostgreSQL.