• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

bountyK

Procedimento em PL/SQL para verificação de campos

3 mensagens neste tópico

Oi pessoal.

Tenho uma dúvida: que funções poderei utilizar para criar um SP em PL/SQL(Oracle) que verifique se um campo tem um valor numérico válido ou não?

Preciso de fazer isto para um projecto, mais especificamente para validação de matrículas.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

A forma "correcta" de fazer isso é através da definição de um tipo de dados teu atribuído à coluna da tabela.

Para fazeres o que queres, consulta a documentação da Oracle para saberes quais as funções que melhor te servem.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

imagina que tens uma tabela TBL e que nessa tabela tens uma coluna COL podes fazer algo assim:

...

DECLARE
   variavel   TBL.COL%type;            -- isto declara uma variavel do mesmo tipo de dados da coluna da tabela

   tipo_de_dados_incorrecto  exception;
  
   pragma exception_init(tipo_de_dados_incorrecto, -06502);

BEGIN
   .....

  variavel := valor;          -- se o valor não for do mesmo tipo.. vai ser lançada uma excepção..

  ......

EXCEPTION
  WHEN  tipo_de_dados_incorrecto  THEN
      RAISE_APPLICATION_ERROR(-20001, 'tipo de dados inválido! bla bla bla.... ');
END;

.. isto é só um exemplo.. mas nem acho que seja a melhor maneira.. se queres validar uma matricula, o melhor é usares uma expressão regular, com as regras que a matricula tem de assumir e já está.

se fosse eu a fazer, era com uma expressão regular.

espero ter ajudado.. se não a resolver o problema.. pelo menos a dar novos caminhos.. explora! :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora