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

 

  1. #1
    S.H
    S.H est déconnecté
    Nouveau membre du Club
    Inscrit en
    octobre 2005
    Messages
    78
    Détails du profil
    Informations forums :
    Inscription : octobre 2005
    Messages : 78
    Points : 31
    Points
    31

    Par défaut stored procedure ne compile pas?

    salut

    quand je compile le stored procudure vide dans FireBird ça marche normale

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    create or alter  procedure Employeur
    as
       begin
     
       end
    mais avec un requete ne compile pas soit selection ou update...
    jai ajouté le point vergile apres le requte la meme chose
    Images attachées Images attachées  

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    janvier 2009
    Messages
    536
    Détails du profil
    Informations personnelles :
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : janvier 2009
    Messages : 536
    Points : 944
    Points
    944

    Par défaut

    Bonjour,

    Sans être un spécialiste comme certains membres de ce forum, il est certain que ta procédure ne peut pas compiler.

    Voici un exemple qui compile et fonctionne.

    J'ai un table pour essai.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CREATE TABLE ESSAI (
        SB_IDX     INTEGER NOT NULL,
        SB_NOM     VARCHAR(30) DEFAULT '' NOT NULL,
        SB_PRENOM  VARCHAR(25) DEFAULT NULL NOT NULL
    );
    Pour établir un procédure stockée ,elle doit avoir la forme suivante.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    CREATE OR ALTER PROCEDURE ESSAI_SELECT
    AS
    DECLARE VARIABLE NEW_1 VARCHAR(30);
    begin
      SELECT SB_NOM FROM ESSAI INTO :NEW_1;
    end
    La première remarque, il faut nommer le colonne dans la clause SELECT et inclure la valeur dans une variable avec INTO. Il n'est possible d'utiliser directement les colonnes de la table dans la procédure.

    Si la procédure doit être utilisée pour lire des valeurs à l'aide d'une requête, il faut ajouter le mot clé SUSPEND. Si la procédure doit retourner plusieurs valeurs, il est nécessaire d'ajouter les commandes FOR DO. A titre d'exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    CREATE OR ALTER PROCEDURE ESSAI_SELECT
    RETURNS (
        NEW_SORTIE VARCHAR(30))
    AS
    begin
      FOR
        SELECT SB_NOM FROM ESSAI INTO :NEW_SORTIE
      DO
      BEGIN
        SUSPEND;
      END
    end
    Pour approfondir ces divers points, tu peux te reporter au langage de référence Firebird. https://firebirdsql.org/refdocs/

    A partir des ces informations, il doit être possible de traiter ta difficulté.

    A+

  3. #3
    S.H
    S.H est déconnecté
    Nouveau membre du Club
    Inscrit en
    octobre 2005
    Messages
    78
    Détails du profil
    Informations forums :
    Inscription : octobre 2005
    Messages : 78
    Points : 31
    Points
    31

    Par défaut

    Merci beaucoup de votre aide

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

Discussions similaires

  1. [Delphi 2005] Librairie Word (Word_TLB) ne compile pas
    Par Brogomil dans le forum API, COM et SDKs
    Réponses: 7
    Dernier message: 01/08/2005, 10h12
  2. [Debutant][Store procedure][performance] plan d'acces
    Par Carmen dans le forum Débuter
    Réponses: 2
    Dernier message: 11/01/2005, 09h20
  3. Apropos des Transactions au sein d'un Stored Procedure
    Par Sarbacane dans le forum Connexion aux bases de données
    Réponses: 6
    Dernier message: 16/11/2004, 08h21
  4. [Stored Procedure]Only constants, expressions, or variables
    Par nmerydem dans le forum MS SQL-Server
    Réponses: 9
    Dernier message: 20/10/2004, 18h29
  5. Réponses: 5
    Dernier message: 01/08/2004, 01h11

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