Cinco Dicas de InterBase e Firebird

Excluir código-fonte de stored procedure

Uma grande preocupação que tem tomado conta da cabeça de muitos programadores é a possibilidade de um programador concorrente pegar o código-fonte das stored procedures armazenadas em banco de dados InterBase/FireBird. Uma solução encontrada é apagar o código-fonte diretamente da tabela de sistema onde o InterBase grava as informações relativas às stored procedures. Para fazer isto execute o comando abaixo: UPDATE RDB$PROCEDURES SET RDB$PROCEDURE_SOURCE = 'empty'
Observações

A mesma coisa pode ser feita com triggers. No entanto é importante lembrar que você não deve atribuir NULL, pois havia um bug no InterBase que fazia o trigger ser disparado duas vezes caso o código-fonte estivesse NULL. Não sei se o bug foi corrigido. De qualquer forma, atribua uma string qualquer, tal como no exemplo acima.

Obter os campos da chave-primária

Execute o comando SELECT abaixo para obter os nomes dos campos da chave-primaria de uma tabela do InterBase ou FireBird. SELECT RDB$FIELD_NAME FROM RDB$RELATION_CONSTRAINTS C, RDB$INDEX_SEGMENTS S WHERE C.RDB$RELATION_NAME = 'NomeDaTabela' AND C.RDB$CONSTRAINT_TYPE = 'PRIMARY KEY' AND S.RDB$INDEX_NAME = C.RDB$INDEX_NAME ORDER BY RDB$FIELD_POSITION
Observações

Estes objetos com nomes iniciados com RDB$ são chamados de objetos de sistema e são usados internamente pelo InterBase/FireBird. As tabelas começadas com RDB$ contém dados sobre a estrutura do banco de dados.

Definir forced writes usando o gfix

Para mudar a propriedade "Forced Writes" de um banco de dados InterBase usando o gfix faça: Para ativar: gfix banco -write sync -user sysdba -password senha Para desativar: gfix banco -write async -user sysdba -password senha Onde: banco = Caminho completo do banco de dados (arquivo .gdb). senha = senha do sysdba.
Observações

Você também poderá usar o IBConsole para alterar esta propriedade.

Definir sweep interval com gfix

Para definir o "sweep interval" de um banco de dados InterBase usando o gfix, execute: gfix banco -housekeeping n -user sysdba -password senha Onde: banco = Caminho completo do banco de dados (arquivo .gdb). n = Intervalo de sweep. senha = senha do sysdba.
Observações

Você também poderá alterar esta propriedade do banco de dados usando o IBConsole.

Obter a data do servidor

Isto é facilmente possível se você usa um banco de dados Client/Server, tal como Interbase, SQL Server, Oracle, etc. No Interbase6 execute a Query abaixo: SELECT CURRENT_DATE FROM RDB$DATABASE; O resultado é a data do servidor onde está rodando o Interbase Server.
Observações

A tabela usada no SELECT foi RDB$DATABASE, mas poderia ser qualquer tabela que possua apenas um registro. RDB$DATABASE é uma tabela de sistema do Interbase.

Autor: Daniel P. Guimarães
Home-page: www.tecnobyte.com.br

 

Links Úteis

  • Downloads do SQL Server:
  • SQL:
    SQL, é a linguagem de pesquisa declarativa padrão para banco de dados relacional (base de dados relacional). Muitas das características originais do SQL foram inspiradas na álgebra relacional.
  • MySQL:

Saiba mais sobre Java ;)

  • Curso de Administração de Banco de Dados com SQL Server:
    ​Neste curso estudaremos os principais tópicos necessários para profissionais que utilizam o SQL Server como servidor de banco de dados no dia a dia.
  • SQL Server 2016:
    Este artigo aborda as novidades disponibilizadas na versão 2016 do SQL Server com o intuito de expor suas melhorias e seus novos recursos.
  • Trabalhando com a linguagem T-SQL:
    Este artigo apresenta o uso da linguagem T-SQL. Serão discutidos alguns recursos que podem ser usados no desenvolvimento e manipulação na consulta a dados usando a ferramenta SQL Server.