FirebirdMsg - Mensagens do Firebird

Quando utilizamos mais de um Firebird instalado em nossos Laptop's ou CPU's, a primeira versão que foi instalada se torda dominante nas mensagens de erro do Firebird, portanto é necessário atualizar o caminho do "firebird.msg"procurando no manual do firebird descobri um comando que atualiza o caminho do arquivo, fiz um .bat para resolver isso de forma bem fácil conforme abaixo:

@ECHO OFF
echo ######################################################
echo #         Alterando o Firebird.msg padrão            #
echo ######################################################
echo #               1 - Firebird 1.5                     #
echo #               2 - Firebird 2.5                     #
echo ######################################################
set /P id=Informe o id:

IF %id% == 1 GOTO Sub1
IF %id% == 2 GOTO Sub2

:Sub1
"C:\Program Files\Firebird\Firebird_1_5\bin\instreg.exe" install
GOTO End

:Sub2
"C:\Program Files\Firebird\Firebird_2_5\bin\instreg.exe" install
GOTO End

:End
pause












Firebird (Deixando Banco Inativo)

Derrubar Conexões

gfix -user SYSDBA -password masterkey [NOME DO SERVIDOR]:[CAMINHO DO BANCO DE DADOS] -shut -force 0

Deixando On-line

gfix -user SYSDBA -password masterkey [NOME DO SERVIDOR]:[CAMINHO DO BANCO DE DADOS] -o

::shut(down) - Deixa o banco de dados inoperante, ficando o servidor Firebird ativo.

::force - Força a operação com o parametro a esquerda que no caso do exemplo acima esta "0" que significa imediatamente, poderia ser informado um tempo em segundos para ser executado.

::o(n-line) - deixa o banco de dados operando novamente.

Firebird - Serviço Calssic


Derrubando

Para derrubar todos os processos do Firebird Classic ativos no Windows, execute o comando,
taskkill /f /im fb_inet_server.exe /t no Prompt do MSDOS.

Levantando Serviço

Abra o executar do windows e digite "services.msc" ira abrir o gerenciador de serviços do Windows procure por "Firebird Server - DefaultInstance" e inicie o serviço novamente, caso necessite iniciar o serviço pelo Prompt do MSDOS execute o comando net start "Firebird Server - DefaultInstance".

Firebird (Backup / Restore)

Backup

GBAK -b -v -i -g -l -t [nome do servidor]:[caminho do banco] [caminho do bancup(.fbk)] -user SYSDBA -password masterkey

Restaurar

GBAK -r -v -t [caminho do bancup(.fbk)] [caminho do banco] -user SYSDBA -password masterkey
  • -b(ackup) parâmetro para efetuar backup.
  • -r(estore) parâmetro para restaurar o backup.
  • -v(erbose) parâmetro para exibir o que esta sendo feito pelo comando backup.
  • -i(gnore) ignorar erros na hora do backup.
  • -g(arbage collect) não realiza backup do lixo.
  • -l(imbo) ignora transações que estiverem abertas no servidor.
  • -t(ransportable) Cria backup transportáveis entre versões no servidor.

SQL - ANSI

O SQL foi desenvolvido originalmente no início dos anos 70 nos laboratórios da IBM com o objetivo de demonstrar a viabilidade da implementação do modelo relacional, o nome original da linguagem era SEQUEL(Structured English Query Language). Embora o SQL tenha sido originalmente criado pela IBM, A partir desta criação e das modificações criadas por outrem, sentiu-se a necessidade de ser criado e adaptado um padrão para a linguagem. Esta tarefa foi realizada pela American National Standards Institute (ANSI) em 1986 e ISO em 1987.

A liguagem esta basicamente divida em duas partes DDL(Data Definition Language) e DML(Data Manipulation Language), no DDL se encontram os comandos de criação, alteração de tabelas e entre outros comandos, DML é onde se encontram os comandos de consulta, inclusão, exclusão e alteração de dados.

Operadores

Logicos


  1. AND - E lógico. Avalia as condições e devolve um valor verdadeiro caso ambos sejam corretos.
  2. OR - OU lógico. Avalia as condições e devolve um valor verdadeiro se algum for correto.
  3. NOT - Negação lógica. Devolve o valor contrário da expressão.

Observação: Os operadores logicos são usados após a cláusula where. Ex.: select * from cliente where cliente.pessoa = 'F' and cliente.salario > 1000

Relacionais

  1. < – Menor que

  2. > – Maior que

  3. <> – Diferente de

  4. <= – Menor ou Igual que

  5. >= – Maior ou Igual que

  6. = – Igual a

  7. BETWEEN – Utilizado para especificar um intervalo de valores.

  8. LIKE – Utilizado na comparação de um modelo e para especificar registros de um banco de dados."Like" + extensão % vai significar buscar todos resultados com o mesmo início da extensão.

  9. IS NULL - Utilizado para verificar se o campo se encontra sem valor algum.

Observações: Os operadores relacionais são usados após a cláusula where. Ex.: select * from cliente where cliente.nome like 'T%'.(Estou solicitando ao SGBD que me retorne todos os clientes que tenham no inicio de seu nome a letra "T" como por exemplo "Tomé", "Tiago").

Funções de Agregação


  1. AVG – Utiliza para calcular a media dos valores de um campo determinado.

  2. COUNT – Utilizada para devolver o número de registros da seleção.

  3. SUM – Utilizada para devolver a soma de todos os valores de um campo determinado.

  4. MAX – Utilizada para devolver o valor mais alto de um campo especificado.

  5. MIN – Utilizada para devolver o valor mais baixo de um campo especificado.

Observações: Toda função de agregação terá necessáriamente que ser usada junto com a cláusula group by. Ex.: Select pedido.codvendedor, count(pedido.codpedido) from pedido group by pedido.codvendedor.

DML - Linguagem de Manipulação de dados

  1. SELECT - Comando para selecionar registros de uma determinada tabela, Esse comando pode ser combinado com as funções de agregação e as clausulas abaixo citadas.
    • Sintax: select * from [TABELA]

  2. INSERT - Comando para adicionar uma linha em uma determitada tabela.
    • Sintax: INSERT INTO [TABELA](campo1,campo2...campoN) VALUES(:param1,:param2...:paramN)

  3. UPDATE - Comando para atualizar campo(s) existente de um registro de uma determitada tabela.
    • Sintax: UPDATE [TABELA] SET campo1 = :param1,campo2 = :param2 WHERE [CAMPO CHAVE] = :param3

  4. DELETE - Comando para excluir um registro de uma determitada tabela.
    • Sintax: DELETE FROM [TABELA] WHERE [CAMPO CHAVE] = :param1

Cláusulas

  1. FROM - Utilizada para especificar a tabela dentro do uso de uma DML
  2. WHERE - Comando utilizado junto de uma DML para condicionar.
  3. GROUP BY - Utilizando para agrupar uma consulta especifica.
  4. HAVING - Utilizado para condicionar a cláusula GROUP BY.
  5. ORDER BY - Utilizado para ordenar uma consulta.
  6. DISTINCT - Utilizado para exibir registros sem repetição.

Comando Especificos (Firebird)

  1. CASE - Utilizada para determinar o resultado de uma coluna exibindo outro resultado.
    • Sintax: SELECT CASE CLIENTE.PESSOA WHEN 'F' THEN 'FISICA' ELSE 'JURIDICA' END FROM CLIENTE
  2. NULLIF - Retorna NULL(sem valor) para uma coluna com valor especifico.
    • Sintax: SELECT nullif(CLIENTE.NOME,'') FROM CLIENTE

  3. COALESCE - Retorna um valor especifico caso o valor da coluna seja NULL(sem valor) para uma coluna especifica.
    • Sintax: SELECT coalesce(CLIENTE.NOME,'CLIENTE SEM NOME') FROM CLIENTE