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 :

try - catch sous Sybase


Sujet :

Sybase

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Janvier 2007
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 1
    Points : 1
    Points
    1
    Par défaut try - catch sous Sybase
    Bonjour, j'utilise:
    Sybase Adaptive Server Enterprise version: 12.5.4


    est ce qu'il existe en SQL l'équivalent des fonctions C# 'try - catch'

    je m'explique, voici mon code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    drop procedure test
    go
    create procedure test
    as
    declare @cur int, @max int, @a float
    begin
    set @cur = -10
    set @max = 10
     
    while @cur < @max
    begin
    set @a = convert(float, 1 / @cur) <----- ici cela va planter lorsque @cur sera égale a zéro.
     
    print '%1!', @cur
    select @cur = @cur + 1
    end
    end
    go
     
    exec test
    go
    je souhaite que la procédure ne s'arrête pas lorsque @cur sera égale à zéro
    exemple du nouveau code (il y a du c# pour vous faire comprendre)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    drop procedure test
    go
    create procedure test
    as
    declare @cur int, @max int, @a float
    begin
    set @cur = -10
    set @max = 10
     
    while @cur < @max
    begin
    try <--------- instruction c# (je cherche l'équivalent en sql)
    begin
    set @a = convert(float, 1 / @cur)
    print '%1!', @cur
    end
    catch <--------- instruction c# (je cherche l'équivalent en sql)
    print 'conversion impossible'
     
    select @cur = @cur + 1
    end
    end
    go
     
    exec test
    go

  2. #2
    Rédacteur
    Avatar de Arnaud F.
    Homme Profil pro
    Développeur COBOL
    Inscrit en
    Août 2005
    Messages
    5 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur COBOL
    Secteur : Finance

    Informations forums :
    Inscription : Août 2005
    Messages : 5 183
    Points : 8 873
    Points
    8 873
    Par défaut
    Bonjour,

    ça n'existe pas, par contre il est possible de tester si la valeur est égale a 0 et ne pas faire le traitement dans ce cas précis, ce qui donne :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    DROP procedure test
    go
    CREATE procedure test
    AS
    declare @cur int, @max int, @a float
    begin
    SET @cur = -10
    SET @max = 10
     
    while @cur < @max
    begin
        if @cur = 0
        begin
            SELECT @cur = @cur + 1
            continue -- on passe à l'itération suivante 
        end
     
        SET @a = convert(float, 1 / @cur) <----- ici cela va planter lorsque @cur sera égale a zéro.
     
        print '%1!', @cur
        SELECT @cur = @cur + 1
    end
    end
    go
     
    exec test
    go
    C'est par l'adresse que vaut le bûcheron, bien plus que par la force. Homère

    Installation de Code::Blocks sous Debian à partir de Nightly Builds

Discussions similaires

  1. Equivalent Try Catch sous SAS ?
    Par mrangelius dans le forum Macro
    Réponses: 1
    Dernier message: 30/11/2010, 09h52
  2. [debutant sous eclipse] surround with try catch
    Par Alwin dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 26/06/2004, 20h03
  3. Les index sous Sybase
    Par Emdis dans le forum Autres SGBD
    Réponses: 2
    Dernier message: 02/06/2003, 15h21
  4. Requete requête sous sybase
    Par eddie dans le forum Sybase
    Réponses: 3
    Dernier message: 02/04/2003, 14h51
  5. Exception & Try..catch
    Par PurL dans le forum C++Builder
    Réponses: 2
    Dernier message: 11/12/2002, 15h35

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