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

SQL Firebird Discussion :

Pb de convertion dans les procedures stockées


Sujet :

SQL Firebird

  1. #1
    Futur Membre du Club
    Inscrit en
    Janvier 2004
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 9
    Points : 9
    Points
    9
    Par défaut Pb de convertion dans les procedures stockées
    *bonjour je dois traduire des procedures stockées venant de SQL serveur en language interbase. Ce qui est bien c'est que je ne connait pas la syntaxe.J'ai par exemple un problème avec le pti bou de code en dessou. J'ai une erreur au niveau du :vNextID = null (enfin je pense).

    IF (:rowcount < 1) then
    begin
    :vNextID = null
    end

    * pour ici c'est le top 1 ,qui doit correspondre au premier enregistrement, qui pose problème.
    SELECT top 1
    ItemID,
    count(*)
    FROM Portal_Discussion
    WHERE DisplayOrder > :vCurrentDisplayOrder
    AND ModuleID = :vCurrentModule
    ORDER BY DisplayOrder ASC
    into :vNextID, :rowcount;


    *Sinon je comprend pas trop les truc des "do begin", "for select" tout ça tout ça. Si kelkun peu m'éxpliquer quand mettre un nouveau begin et la signification des for select comparé à un select tout seul...
    Merci d'avance à tout ceux qui m'aideront
    Yann

  2. #2
    Membre actif Avatar de seb.49
    Profil pro
    ljgdfgdf
    Inscrit en
    Octobre 2002
    Messages
    291
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : ljgdfgdf

    Informations forums :
    Inscription : Octobre 2002
    Messages : 291
    Points : 209
    Points
    209
    Par défaut Re: Pb de convertion dans les procedures stockées
    Citation Envoyé par Yannesco
    * pour ici c'est le top 1 ,qui doit correspondre au premier enregistrement, qui pose problème.
    SELECT top 1
    ItemID,
    count(*)
    FROM Portal_Discussion
    WHERE DisplayOrder > :vCurrentDisplayOrder
    AND ModuleID = :vCurrentModule
    ORDER BY DisplayOrder ASC
    into :vNextID, :rowcount;
    Je crois pas que le TOP existe dans interbase

    Citation Envoyé par Yannesco
    *Sinon je comprend pas trop les truc des "do begin", "for select" tout ça tout ça. Si kelkun peu m'éxpliquer quand mettre un nouveau begin et la signification des for select comparé à un select tout seul...
    Merci d'avance à tout ceux qui m'aideront
    Yann
    Je pense que tu parle de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    FOR SELECT **** DO
    BEGIN 
    *****
    *****
    END
    c'est comme en pascal, ou les { } en C ca permet de délimiter des instrucitons

  3. #3
    Membre expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 048
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 048
    Points : 3 342
    Points
    3 342
    Par défaut
    Un "for select" doit etre utilisé si le résultat du select renvoie une ou plusieures valeurs. En fait celà permet de faire une boucle sur chacun des enregistrements sélectionnés.

    Un select seul (sans le FOR) ne doit retourner qu'UN et UN seul enregistrement (par une exemple un select avec un where ClePrimaire=:Valeur)

    Do begin : je connais pas sur quel version travaillez vous ?

    Je connais le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    while <Conditions> do
    begin
      traitements
    end
    pour faire une boucle mais le "do begin" n'existe pas du moins dans interbase 6.01.

    Je ne connais pas top 1 non plus mais peut etre que ca correspond à la nouvelle fonctionnalité d'interbase 7.x qui gère les rows. en tout cas je peux pas t'en parler car je ne connais que la version 6. désolé.

    Donc le mieux est que tu nous dise sur quel version tu travailles...

  4. #4
    Futur Membre du Club
    Inscrit en
    Janvier 2004
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 9
    Points : 9
    Points
    9
    Par défaut
    J'utilise la version 5.5 d'interbase et firebird comme provider.
    merci d'avoir repondu aussi vite. En fait pour les "do begin" je te di peu etre des connerie si ca ce trouve ca n'existe pas.Mais bon c comme tout, quand on ne connait pas kelke chose...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. COMMIT Dans les procedures stockées et les triggers
    Par tijani dans le forum InterBase
    Réponses: 2
    Dernier message: 10/11/2009, 09h54
  2. Réponses: 2
    Dernier message: 07/08/2007, 19h48
  3. Réponses: 3
    Dernier message: 21/09/2004, 07h35
  4. Réponses: 6
    Dernier message: 05/08/2004, 13h15
  5. Probleme dans une procedure stockée
    Par malbaladejo dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 07/07/2004, 14h08

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