2014-06-20 7 views
0

Je suis complètement nouveau à la procédure stockée Oracle et maintenant j'essaye de modifier un sp écrit par quelqu'un d'autre. Ça devrait être très simple mais je ne sais pas comment. Voici le squelette de sp.Procédure stockée Oracle Requête dynamique - Comment ajouter une colonne supplémentaire

create or replace 
PROCEDURE mySP 
(
    p1 IN VARCHAR2 
    , p2 IN VARCHAR2 
    , p3 IN VARCHAR2 
    , CUR_S OUT SYS_REFCURSOR 
) 
AS 
... 
... 

et il va Surchauffe dynamiquement avec tas de conditions, voici où il construit la requête:

my_query := 
    'SELECT '|| 
    column1_name || 
    column2_name || 
    FROM 
    ... 

toutes les requêtes sont très bien, tout ce que je veux faire, est d'ajouter une colonne supplémentaire dans le select statement où la valeur est p1, the input parameter

J'ai essayé

my_query := 
     'SELECT p1 as newColumnName '|| 
     column1_name || 
     column2_name || 
     FROM 

Mais cela ne fonctionne pas. donc qu'est ce que je devrais faire? Merci.

+0

Quelle est l'exception? – MinhD

+0

utilisez ''SELECT' || p1 || 'comme nouveauColumnName' || '. – San

Répondre

0

Essayez cette

my_query := 
     'SELECT ''' || 
     p1 || ''' as newcolumn_name, ' || 
     column1_name || 
     column2_name || 
     FROM 
-1

Essayez somthing comme ceci: -

'SELECT' || P1 as newColumnName || column1_name || column2_name || 
FROM... 

espère que cela peut vous aider.

Questions connexes