IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Sybase Discussion :

Récupérer le code erreur du convert


Sujet :

Sybase

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2006
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 34
    Par défaut Récupérer le code erreur du convert
    Bonjour,

    dans ma BD, je dois valider un code. Ce code est de ce format : AAAnnnnn
    où AAA est alphabétique et nnnnn numérique.
    Je veux donc vérifier que la 2e partie est bien numérique.
    Pour cela j'avais pensé récupérer l'erreur de la fonction convert :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    select @ln_partie2 = convert(numeric,@ls_partie2)   
    select @L_SQLERREUR = @@error
    IF @L_SQLERREUR != 0   
    begin   
    	select @L_ERREUR = "Le code n'est pas valide"   
    	select @L_RETURN = -1
    	goto Sortie   
    end
    Mais ça ne marche pas... je ne récupère pas l'erreur de la fonction convert.

    Quelqu'un a t il une idée ?

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 79
    Par défaut
    Vous pourriez utiliser if et like, par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    1>  if "1"  like "[0-2]"
    2> print "OK"
    3> go
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    1> if "A" like "[0-2]"
    2>  print "OK"
    3> go

  3. #3
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 307
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 307
    Par défaut
    En ASE 15.0.1:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    select isnumeric(data)
    qui retourne 1 si "data" est numerique...

    Michael

  4. #4
    Membre averti
    Inscrit en
    Juillet 2006
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 34
    Par défaut
    Je suis malheureusement en version 12.5

    C'est donc la solution de lsone que je vais utiliser.

    Merci à tous les 2.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 79
    Par défaut
    Citation Envoyé par lsone

    En ASE 12.5.X, vous pourriez utiliser if et like, par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    1>  if "1"  like "[0-2]"
    2> print "OK"
    3> go
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    1> if "A" like "[0-2]"
    2>  print "OK"
    3> go

  6. #6
    Membre chevronné

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 247
    Billets dans le blog
    1
    Par défaut
    Je ne vois pas pourquoi ta méthode ne marcherait pas.
    Recuperes tu bien le @@error juste apres le convert ?

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 79
    Par défaut
    Citation Envoyé par Jean.Cri1
    Je ne vois pas pourquoi ta méthode ne marcherait pas.
    Recuperes tu bien le @@error juste apres le convert ?
    En fait, c'est le convert(numeric,@ls_partie2) qui pose problème.
    Pour tout les cas où @ls_partie2 n'est pas numeric, tu auras toujours une erreur.

    Reportez vous à http://www.developpez.net/forums/sho...d.php?t=183928

  8. #8
    Membre chevronné

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 247
    Billets dans le blog
    1
    Par défaut
    Merci pour le lien, c'est une problematique interessante.

Discussions similaires

  1. [AC-2010] Mailing CDO impossible de récupérer le code erreur suite à un .send
    Par AlexFred dans le forum VBA Access
    Réponses: 6
    Dernier message: 09/10/2014, 21h29
  2. Réponses: 3
    Dernier message: 22/02/2008, 16h02
  3. Récupérer le code d'une erreur Oracle
    Par etoileDesNeiges dans le forum SQL
    Réponses: 6
    Dernier message: 04/10/2007, 11h22
  4. [Mail] récupérer les code erreurs de mail()
    Par Djakisback dans le forum Langage
    Réponses: 2
    Dernier message: 22/03/2006, 18h19
  5. [Oracle][ADO_QRY] Récupérer le code d'erreur
    Par Cryonie dans le forum Bases de données
    Réponses: 4
    Dernier message: 04/06/2004, 14h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo