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

PL/SQL Oracle Discussion :

Echappement de caractère chr(95) [11gR2]


Sujet :

PL/SQL Oracle

  1. #1
    Membre expérimenté Avatar de nathieb
    Homme Profil pro
    DevOps
    Inscrit en
    Mai 2004
    Messages
    1 058
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DevOps
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 058
    Points : 1 532
    Points
    1 532
    Par défaut Echappement de caractère chr(95)
    Bonjour,

    je vais devenir fou ...

    si je fais la requête suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT chr(95)||'ID' FROM DUAL;
    Oracle m'affiche _ID, donc normal.
    La ou cela devient cocasse, c'est que je veux concaténer deux champs pour en faire une clef primaire avec le mot AS pour renommer la colonne.
    J'ai donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    FONCTION PL/SQL
    ..
    v_sql := ' SELECT CODE_ID ||''''||NUMERO_ID AS chr(95)||'ID', .... FROM MATABLE';
     
    cdb_sql.send_bulk_docs(....); ici j'injecte le retour dans une base NOSQL
    Impossible de m'en sortir,
    J'ai essayé avec q'['_ID']', mais il plante.

    c'est le symbole _ qu'il n'apprécie pas cependant j'ai besoin qu'il soit présent à l'affichage.
    J'ai aussi essayé avec "_ID" mais là aussi j'ai une erreur PL/SQL
    Architecte destructurant,
    be cool, be free

    Il nous reste Debian bien sûr

  2. #2
    Membre du Club
    Inscrit en
    Décembre 2008
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 27
    Points : 51
    Points
    51
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    v_sql := 'SELECT CODE_ID||NUMERO_ID AS "_ID", ... FROM MATABLE'
    devrai suffire pourquoi mettre ||''''|| entre les champs?

  3. #3
    Membre expérimenté Avatar de nathieb
    Homme Profil pro
    DevOps
    Inscrit en
    Mai 2004
    Messages
    1 058
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DevOps
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 058
    Points : 1 532
    Points
    1 532
    Par défaut Merci j'ai trouvé
    Bonjour,

    J'ai trouvé mais quel boulet je suis ...
    merci tu m'as mis sur la piste

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    v_sql := 'SELECT REP.CODE_ID||REP.NUMERO_ID AS "_ID", ... FROM MATABLE REP'
    J'avais oublié les aliases et mal lu le message d'erreur. Et ta solution fonctionne.

    Olivier
    Architecte destructurant,
    be cool, be free

    Il nous reste Debian bien sûr

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

Discussions similaires

  1. Echapper un caractére + Lancer un script VBS
    Par FinalSpirit dans le forum WinDev
    Réponses: 6
    Dernier message: 01/10/2007, 13h46
  2. Echapper un caractère
    Par Invité dans le forum Langage
    Réponses: 18
    Dernier message: 14/09/2007, 14h37
  3. Echappement de caractères
    Par Mengué georges dans le forum JDBC
    Réponses: 1
    Dernier message: 31/05/2007, 17h03
  4. QueryString Echappement du caractère &
    Par lapanne dans le forum ASP
    Réponses: 2
    Dernier message: 12/03/2007, 10h49
  5. [Conception] Echappement de caractères
    Par nicoaix dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 11/04/2006, 19h32

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