segunda-feira, 28 de janeiro de 2008

pgEdit - Um Editor Simplificado MUITO RUIM!

O pgEdit em sua versão 1.2 é uma ferramenta simples para edição de SQL, com integração com o PostgreSQL.


A integração se restringe à realização de conexões com o PostgreSQL (na verdade, com o utilitário psql) para execução dos comandos digitados. Está disponível em Windows e Macintosh. É um editor bem simples, que colore o texto digitado e apresenta algumas boas teclas de atalho.


O problema é que não oferece mais nada além disso. Não apresenta ferramentas para "auto complete" do texto e custa 65 dólares. Pode ser uma boa opção para quem não gosta de utilizar os editores do psql e do pgAdmin III. Sinceramente, não gostei desta ferramenta!

Confira e teste: http://www.pgedit.com/

quarta-feira, 23 de janeiro de 2008

O Comando ALTER DOMAIN

Este comando altera um domínio definindo e excluindo valores padrão (DEFAULT), alterando a verificação se os valores aceitos são nulos, acrescentando e retirando restrições de integridade, owner do domínio e o esquema do domínio.

Permite alterações radicais nos domínios criados/ mantidos.

Sintaxe:

ALTER DOMAIN name { SET DEFAULT expression | DROP DEFAULT }
ALTER DOMAIN name { SET | DROP } NOT NULL
ALTER DOMAIN name ADD domain_constraint
ALTER DOMAIN name DROP CONSTRAINT constraint_name [ RESTRICT | CASCADE ]
ALTER DOMAIN name OWNER TO new_owner
ALTER DOMAIN name SET SCHEMA new_schema

Exemplos:

1 - Alteração de valores DEFAULT do domínio. Se aplica às próximas inserções/ alterações.

CREATE DOMAIN data_dom AS date;
ALTER DOMAIN data_dom SET DEFAULT '01-01-2008';

2 - Exclusão de valor DEFAULT do domínio. Se aplica às próximas inserções/ alterações.

ALTER DOMAIN data_dom DROP DEFAULT;

3 - Ativação e reativação de restrição NOT NULL.

ALTER DOMAIN data_dom SET NOT NULL;
ALTER DOMAIN data_dom DROP NOT NULL;

4 - Criação de restrição de integridade associada ao domínio.

ALTER DOMAIN data_dom ADD CONSTRAINT datachk CHECK (VALUE <> '01-01-2007');;

5 - Alteração de restrição de integridade associada ao domínio.

ALTER DOMAIN data_dom DROP CONSTRAINT datachk RESTRICT;
ALTER DOMAIN data_dom DROP CONSTRAINT datachk CASCADE;

6 - Mudança de owner do domínio.

CREATE USER usuario;
ALTER DOMAIN data_dom OWNER TO usuario;
ALTER DOMAIN data_dom OWNER TO postgres;

7 - Alteração no esquema do domínio.

CREATE SCHEMA schema_domain;
ALTER DOMAIN data_dom SET SCHEMA schema_domain;

segunda-feira, 21 de janeiro de 2008

PostgreSQL ganha o Developer.com Product of the Year 2008

O site developer.com fez uma enquete para escolher as principais tecnologias de desenvolvimento do ano de 2008. Na categoria de ferramentas e add-ins para banco de dados o PostgreSQL foi o grande ganhador, concorrendo com ferramentas livres e proprietárias.

Os finalistas da categoria foram:
  • Hibernate
  • Java DB
  • MySQL
  • Oracle Database 10g
  • PostgreSQL
Votações na internet são questionáveis como melhor metodologia para realizar escolhas técnicas, mas o resultado não deixa de ser uma boa notícia para a comunidade do PostgreSQL, revelando maior ganho de divulgação e credibilidade por parte da ferramenta na comunidade de usuários.

Confira a reportagem original aqui, incluindo os ganhadores das demais categorias.

quarta-feira, 16 de janeiro de 2008

O Comando CREATE DOMAIN...

O comando CREATE DOMAIN permite a criação de domínios de campos que podem ser aplicados a campos das tabelas, restringindo o conjunto de valores aceitos para inclusão e/ou alteração dos dados.

Sintaxe:

CREATE DOMAIN name [ AS ] data_type
[ DEFAULT expression ]
[ constraint [ ... ] ]

onde constraint é:

[ CONSTRAINT constraint_name ]
{ NOT NULL | NULL | CHECK (expression)

Exemplos:

1 - Criação de domínio simples.

CREATE DOMAIN sexo AS char(1);

2 - Domínio com a cláusula DEFAULT. O DEFAULT indica que 'M' será o valor gravado quando o mesmo não for fornecido e em seu lugar a palavra DEFAULT for empregada.

CREATE DOMAIN sexo_default AS char(1)
DEFAULT 'M';

3 - Domínio com a cláusula CHECK restringindo os sexos a masculino e feminino.

CREATE DOMAIN sexo_values AS char(1)
CHECK ( VALUE IN ('M', 'F'));

4 - Domínio com as cláusulas CHECK, NOT NULL e DEFAULT.

CREATE DOMAIN sexo_full AS char(1)
DEFAULT 'M'
NOT NULL
CHECK ( VALUE IN ('M', 'F'));

5 - Domínio em um campo inteiro.

CREATE DOMAIN idade AS integer
DEFAULT 0
NOT NULL
CHECK ( VALUE > 0);

6 - Domínio em um campo tipo data.

CREATE DOMAIN nascimento AS date
DEFAULT '01/01/1900'
NOT NULL
CHECK ( VALUE > '01/01/1900');

7 - Domínio com uma constraint explicitamente nomeada.

CREATE DOMAIN data_evento AS date
CONSTRAINT valida_data CHECK ( VALUE > '01/01/1900' AND VALUE > '01/01/2099');

8 - Utilização de domínios na criação de uma tabela.

CREATE TABLE pessoa_teste(
cod serial,
nasc nascimento,
idade idade,
sexo sexo_full);

INSERT INTO pessoa_teste (nasc ,idade ,sexo) VALUES ('01/01/2007', 12, 'M');

Criação de Domínios

Domínos são restrições de valores que podem ser aplicadas a campos. Freqüentemente os campos criados nas tabelas aceitam um conjunto restrito de valores e a utilização de domínios permite o controle automatizado das inserções e alterações feitas de modo que não se viole estas regras.

No PostgreSQL é possível criar uma tabela e restringir os valores de seus campos com NOT NULL e restrições do tipo CHECK, dispensando a criação de domínios. No entanto, o seu uso permite reutilizar estas restrições em vários campos com características em comum.

Os comandos relacionados com domínios são:
- CREATE DOMAIN
- ALTER DOMAIN
- DROP DOMAIN

sexta-feira, 11 de janeiro de 2008

Sistema de Concessão de Diárias e Passagens do Governo Federal (SCDP)

Sistema de Concessão de Diárias e Passagens será open source.

São Paulo - Sistema, que era programado em ASP e usava banco de dados SQL Server, será desenvolvido com linguagem Java e usará o Postgre (SIC).
Em 2008, o Sistema de Concessão de Diárias e Passagens (SCDP) do Governo Federal será desenvolvido usando software livre. O Serviço Federal de Processamento de Dados (Serpro) será responsável pela nova versão.

A notícia completa você vê no Idgnow.

Veja mais informações no site do SERPRO.

segunda-feira, 7 de janeiro de 2008

Atualização de segurança: PostgreSQL 8.2.6!!!

EXTRA!!! Liberada atualização de segurança do PostgreSQL! Corrigidas cinco falhas CRÍTICAS que poderiam ser exploradas para ataques. A versão 8.2.6, lançada hoje apresenta coreção para estes bugs.

Os problemas corrigidos foram constatados desde as versões 7.3, 7.4, 8.0, 8.1 e 8.2 do PostgreSQL:

- Index Functions Privilege Escalation (CVE-2007-6600)

- Regular Expression Denial-of-Service (CVE-2007-4772, CVE-2007-6067,
CVE-2007-4769)

- DBLink Privilege Escalation (CVE-2007-6601)

Os usuários das versões 7.* são aconselhados a migrar para releases mais novas, pois o seu ciclo de vida está encerrado. Os instaladores com a correção na versão 7.4 estão disponíveis no site PostgreSQL.org.

Mais detalhes aqui ou no blog do Magnus Hagander.

sexta-feira, 4 de janeiro de 2008

Temos marcadores!!!

Esta manhã coloquei marcadores nos tópicos, uma vez que o grande número de posts pode dificultar pesquisas. Sugestões de como melhor organizar o conteúdo são muito bem vindas!

FELIZ 2008!!!