Administradores de Banco de Dados

16
Considerações sobre chave primária não inteira

Contexto Estou projetando um banco de dados (no PostgreSQL 9.6) que armazena dados de um aplicativo distribuído. Devido à natureza distribuída do aplicativo, não posso usar números inteiros de incremento automático ( SERIAL) como minha chave primária devido a possíveis condições de corrida. A...

16
CRIAR TABELA AS vs SELECT INTO

O PostgreSQL suporta CREATE TABLE ASe SELECT INTOquando uso os dois? CREATE TABLE AS - definir uma nova tabela a partir dos resultados de uma consulta CREATE TABLE AScria uma tabela e a preenche com dados calculados por um SELECTcomando. As colunas da tabela têm os nomes e tipos de dados...

16
(x NÃO É NULL) vs (NÃO é NULL) no PostgreSQL

Por que x IS NOT NULLnão é igual a NOT x IS NULL? Este código: CREATE TABLE bug_test ( id int, name text ); INSERT INTO bug_test VALUES (1, NULL); DO $$ DECLARE v_bug_test bug_test; BEGIN RAISE NOTICE '%: %', v_bug_test, (v_bug_test IS NULL); RAISE NOTICE '%: %', v_bug_test, (v_bug_test IS...

16
É possível limitar o tempo limite no servidor Postgres?

Defino o tempo limite de conexão e comando como 10 minutos no meu aplicativo (lado do cliente). Em seguida, meu aplicativo executa uma consulta simples: SELECT pg_sleep(65) Em alguns servidores, ele funciona bem, mas outros fecham a conexão após 60 segundos. Poderia ser algum tipo de...

16
PostgreSQL: colunas geradas

O PostgreSQL suporta colunas geradas ? Também conhecido como colunas virtuais . Eu não estou falando de IDENTITYcolunas . Não consigo encontrar nenhuma informação sobre esse recurso notável, mas sei que ele está disponível no SQL Server e nas versões mais recentes do MariaDB e MySQL. O recurso é...

16
NOT (a = 1 AND b = 1) vs (a <> 1 AND b <> 1)

Na WHEREcláusula de uma consulta SQL, eu esperaria que essas duas condições tivessem o mesmo comportamento: NOT (a=1 AND b=1) vs a<>1 AND b<>1 A primeira condição se comporta conforme o esperado e, embora eu preveja a segunda condição para fazer a mesma coisa, não. Isso é muito...