DevMedia
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login

IF-THEN-ELSE, BEGIN-END, COMENTARIOS no Firebird

Veja nesta Quick como utilizar IF-THEN-ELSE, BEGIN-END, COMENTARIOS no Firebird.

[fechar]

Você não gostou da qualidade deste conteúdo?

(opcional) Você poderia comentar o que não lhe agradou?

Confirmo meu voto negativo

Olá galera, nesta Quick Tips, irei mostrar como podemos trabalhar comentários, BEGIN-END, IF-THEN-ELSE no Firebird.

A linguagem que utilizamos em Stored Procedure e Trigger possuem todas as instruções que temos em linguagem de programação, assim como Delphi, Java, C#, entre outras, veja estas comparações.

Comentários

Como o próprio nome já diz é um comentário, um lembrete, ou uma forma de documentar uma Stored Procedure, Trigger ou um trecho de código. Sendo ignorado e não compilado por tanto podemos escrever qualquer informação em um comentário, veja a sintaxe:

  /* Este é um exemplo de comentário em Firebird 
  Podemos incluir quantas linhas forem necessárias*/
  SELECT NOME, SEXO, IDADE, CPF, RG 
  FROM CLIENTE
  WHERE IDCLIENTE = 1
  

  -- Este comentário funciona apenas para uma linha
  SELECT NOME, SEXO, IDADE, CPF, RG 
  FROM CLIENTE
  WHERE IDCLIENTE = 1

BEGIN-END

Esta linguagem utilizada Stored Procedure e Trigger, é bem parecida com o Pascal, em alguns aspectos como While, Begin e End, IF-THEN-ELSE, por exemplo.

Assim como em Pascal, a utilização de BEGIN e END, indica um agrupamento de linha de códigos, veja a sintaxe:

 
  BEGIN 
 IF (state_code = 'CA') THEN state_name = 'California';
 ELSE IF (state_code = 'UT') THEN state_name = 'Utah'; 
 ELSE state_name = 'unknown'; 
END 

Atribuição

A linguagem de Stored Procedure e Trigger permite também comandos de atribuição, podemos utilizar variáveis locais ou parâmetros de entrada para efetuarmos o calculo. Podem também ser complexas assim como nas linguagens de programação, não tendo restrições de complexidade. Veja a sintaxe:

  Valor1 := (Valor2 * Valor3) / 2;

IF-THEN-ELSE

Além de tudo que já vimos para Stored Procedure e Trigger, temos também os comandos IF-THEN-ELSE, assim como em qualquer linguagem de programação. Veja a sintaxe :

 
  IF (VariavelNome = 'DEVMEDIA')
  THEN VariavelNome = 'www.devmedia.com.br';
  ELSE VariavelNome = 'www.google.com.br';  

Podemos ainda utilizar bloco de BEGIN-END, além de expressões como =, <, >, <=, >=, <> , ajudando assim a montar expressões mais complexas.

Temos diversas outras variações a serem utilizadas com o bloco IF-THEN-ELSE. Veja alguma delas:

  • Valor LIKE valor: Ovalor à direita pode incluir um ou mais curingas. Use % para zero ou mais caracteres e _ para um caracter.
  • Valor IN (valor1, valor2, valor3, &):Membro de uma lista de valores.
  • Valor EXISTS (subquery):Verdadeiro se o valor combinar com um dos valores retornados pela subquery.
  • Valor ANY (subquery):Verdadeiro se o valor combinar com qualquer das linhas retornadas pela subquery.
  • Valor ALL (subquery):Verdadeiro se o valor combinar com todas as linhas retornadas pela subquery.
  • Valor IS NULL:Verdadeiro se o valor for nulo.
  • Valor IS NOT NULL:Verdadeiro se o valor não for nulo.
  • Valor CONTAINING valor:Busca de substring sem diferenciar maiúsculas e minúsculas.
  • Valor STARTING WITH valor: Verdadeiro se o valor a esquerda iniciar com o valor a direita. Diferencia maiúsculas e minúsculas.

Veja um exemplo:

  IF
  (any_sales > 0) THEN
  BEGIN
  EXCEPTION reassign_sales;
  SUSPEND;
  END
  IF
  (first IS NOT NULL) THEN
  line2=first || ' ' || last;
  ELSE
  line2=last;

Fico por aqui ate à próxima Quick Tips.

Um abraço



Atuou como desenvolvedor/consultor há mais de 9 anos. Liderou, como projetista/analista, diversos importantes projetos de TI na Marinha do Brasil. Atualmente é coordenador editorial da web-03, incluindo os sites DevMedia, JavaFree [...]

O que você achou deste post?
Conhece a assinatura MVP?
Serviços

Mais posts