Curso Firebird SQL 23 – Union

O operador UNION é usado para combinar o conjunto de resultados de duas ou mais instruções SELECT.

Observe
que cada instrução SELECT no UNION deve ter o mesmo número de colunas.
As colunas também devem ter tipos de dados semelhantes. Além disso, as
colunas em cada instrução SELECT devem estar na mesma ordem.
Script exemplo:

SELECT codigo, tipo, nome 

from (select
        F.FOR_CODIGO AS codigo,     

        ‘Fornecedor’ as Tipo, 

        f.FOR_NOME   as Nome

      from FORNECEDOR F

    

 UNION ALL

      select
         c.CLI_CODIGO as codigo, 

         ‘Cliente’    as Tipo,
         c.CLI_NOME as Nome

      from CLIENTE C)

  

 Order BY NOME

 


Curso Firebird SQL 18 – Exception

Tratando exceções com mensagens de retorno.

Script exemplo:

–Criando Exception
CREATE EXCEPTION EXC_CLIPADRAO
‘Cliente 1 padrão consumidor, exclusão não permitida’;

–Criando Gatilho para disparar exception
SET TERM ^ ;
CREATE TRIGGER CLIENTE_BD FOR CLIENTE ACTIVE
BEFORE DELETE POSITION 0
AS
BEGIN
    /* enter trigger code here */
   if (old.Cli_CODIGO = 1) then
    exception EXC_CLIPADRAO;   
END^
SET TERM ; ^

Curso Firebird SQL 17 – Generator e Trigger

Criando campo auto incrimento usando trigger e generator.

Script Exemplo:

–Criar Generator:
CREATE GENERATOR INC_PRODUTO;
SET GENERATOR INC_PRODUTO TO 1;

–Criar Gatilho(trigger)
 SET TERM ^ ;
CREATE TRIGGER PRODUTO_BI FOR PRODUTO ACTIVE
BEFORE INSERT POSITION 0
AS
BEGIN
    /* enter trigger code here */
    new.PRO_CODIGO = GEN_ID(INC_PRODUTO,1);
END^
SET TERM ;
^

Curso Firebird SQL 16 – Between

O operador BETWEEN seleciona valores dentro de um intervalo. Os valores podem ser números, texto ou datas.

Script exemplo:

— valor do produto maior ou igual a 5 e menor ou igual a 13
select * from produto where (pro_valor >= 5 and pro_valor <= 13)
ou
select * from produto where (pro_valor between 5 and 13);
–BETWEEN exibe registros entre 2 valores ou datas

Curso Firebird SQL 15 – In

O operador IN permite que você especifique vários valores em uma cláusula WHERE.

Script exemplo:

— somente do produto com código = 3
select * from produto where pro_codigo = 3;
–ou
select * from produto where pro_codigo in(3); // in

— somente produtos com código = 3 e codigo = 5
select * from produto where (pro_codigo = 3 or pro_codigo = 6);
ou
select * from produto where pro_codigo in(3,6);
–IN = valores pré definidos