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

PostgreSQL Discussion :

Probléme paramètre entrées dans procédure stockée


Sujet :

PostgreSQL

  1. #1
    Membre régulier
    Inscrit en
    Février 2008
    Messages
    276
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 276
    Points : 83
    Points
    83
    Par défaut Probléme paramètre entrées dans procédure stockée
    Salut tout le monde,je suis entrain de tester cette procédure avec SQL Manager 2007 Lite for PostgreSQL avec les paramètres suivant 156, 1, '''AB5'''',''''NA''' ',' '''JB21'''. :
    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
    28
    29
    30
    31
    32
    33
    CREATE OR REPLACE FUNCTION "theriaque"."get_the_cipemg_spe_ter" (numeric, numeric, varchar) RETURNS "pg_catalog"."refcursor" AS
    $body$
    DECLARE
      CodeId ALIAS FOR $1;  TypId ALIAS FOR $2;  LSTTER ALIAS FOR $3;
      curRet REFCURSOR;
    BEGIN
      IF TypId = 1 THEN 
        OPEN curRet FOR EXECUTE 
    ' SELECT t4.FCPMTER_FCPM_CODE_FK_PK AS IDCIPEMG,
    t4.FCPMTER_NATURE_CIPEMG_PK AS  NATURE,
    t3.cdf_code_pk              AS   CODETER,
    t3.cdf_nom                  AS   TERRAIN,
    t2.fcpmtx_texte             AS   TEXT,
    t4.FCPMTER_NUMSEQ_PK        AS   NOSEC
    FROM  FCPMSP_CIPEMG_SPE         t1
      inner join FCPMTER_FCPM_TERRAIN    t4 on t4.FCPMTER_FCPM_CODE_FK_PK   = t1.FCPMSP_FCPM_CODE_FK_PK AND t4.FCPMTER_NATURE_CIPEMG_PK   = ''C''
      inner join CDF_CODIF               t3 on t4.FCPMTER_CDF_TER_CODE_FK_PK = t3.CDF_CODE_PK AND t3.CDF_NUMERO_PK = ''CS''
      left join FCPMTX_FICHECIPEMG_TEXTE t2 on t4.FCPMTER_FCPM_CODE_FK_PK    = t2.FCPMTX_FCPM_CODE_FK_PK  
                                        AND    t4.FCPMTER_CDF_TER_CODE_FK_PK = t2.FCPMTX_CDF_TER_CODE_FK_PK
                                        AND    t4.FCPMTER_NATURE_CIPEMG_PK   = t2.FCPMTX_NATURECIPEMG_FK_PK
                                        AND    t4.FCPMTER_NUMSEQ_PK          = t2.FCPMTX_NUMSEQ_TER_FK_PK 
    WHERE t1.FCPMSP_SP_CODE_FK_PK       = '''||CodeId||'''
    AND   t4.FCPMTER_CDF_TER_CODE_FK_PK IN ('||LSTTER||')            
    ORDER BY 1 ';
      END IF;
    RETURN curRet;
    END;
    $body$
    LANGUAGE 'plpgsql'
    VOLATILE
    CALLED ON NULL INPUT
    SECURITY INVOKER
    COST 100;
    Normalement ça doit me donner 3 lignes comme résultat mais ça n'affiche rien. Sachant que la procédure est correct aisin que les données mais le seul problème c'est le 3ème paramètre. Est ce qu'il est bien formaté ou non ? avec cette forme la procédure ne génère pas d'erreur.
    Merci d'avance.
    Cordialement.

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 874
    Points : 2 890
    Points
    2 890
    Par défaut
    Dans le 3eme paramètre, pourquoi mettre parfois 3 apostrophes, et parfois 4 ?
    Apparemment c'est plutôt 2 qu'il faudrait. En tout cas en mode standard_conforming_strings=on, mais apparemment c'est le mode utilisé ici, puisqu'il n'y a pas de backslashes devant les apostrophes.

Discussions similaires

  1. Réponses: 9
    Dernier message: 25/08/2021, 14h52
  2. [2008R2] Paramètre time dans Procédure stockée
    Par Invité dans le forum Développement
    Réponses: 3
    Dernier message: 16/05/2013, 15h38
  3. Réponses: 0
    Dernier message: 15/01/2009, 16h09
  4. Problème de LIKE dans Procédures stockées
    Par Pilhole dans le forum Langage SQL
    Réponses: 1
    Dernier message: 16/02/2008, 14h38
  5. Réponses: 13
    Dernier message: 11/01/2007, 15h39

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