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

Oracle Discussion :

[PL/SQL, 9i] chaîne de caractère


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2004
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 81
    Par défaut [PL/SQL, 9i] chaîne de caractère
    Bonjour, existe-il un procédure PL/SQL permettant d'ajouter un caractère ' si la chaîne de caractère passé en paramètre contient un ' :

    Exemple:

    Chaîne avant traitement:

    L'hiver approche.
    Chaîne après traitement:

    L''hiver approche.
    Merci du coup de pouce!

  2. #2
    Membre expérimenté Avatar de VinceTlse
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 163
    Par défaut
    Bonjour,
    A part reconstruire la chaine en jouant avec la fonction substr, je ne vois pas comment tu pourrais t'y prendre.
    A ma connaissance, il n'y a pas de fonction PLSQL faisant ça.

  3. #3
    Membre expérimenté Avatar de VinceTlse
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 163
    Par défaut
    Mea culpa !!!

    Extrait du guide pl/sql de SheikYerbouti
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
        * Remplacement des caractères d'une chaîne par une sous-chaîne
     
    REPLACE( chaîne, chaîne source, chaîne cible )
     
    chaîne représente le nom d'une colonne, d'une variable ou un littéral passé en argument
    chaîne source représente le nom d'une variable ou un littéral de recherche
    chaîne cible représente le nom d'une variable ou un littéral de remplacement
     
    REPLACE( 'banjaur', 'a', 'o' ) bonjour
     
    Elimination de caractères
     
    REPLACE( '"champs1","champs2"', '"', '' ) champs1,champs2

  4. #4
    Membre confirmé
    Inscrit en
    Janvier 2004
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 81
    Par défaut ok!
    ha oui, merci, j'avais plus pensé à cette fonction!!!

    Cool !!!

    Ca me donne ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    REPLACE(rec.DESCRIPTION_VAR, '''', '''''')
    rec.DESCRIPTION_VAR étant une colonne de mon curseur qui contient des chaînes de caractères.

    Attention aux allérgiques aux ' !!!


    Merci

  5. #5
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Pour les allergiques:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Replace( chaine, CHR(39), CHR(39)||CHR(39) )

  6. #6
    Membre émérite Avatar de plabrevo
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    548
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 548
    Par défaut
    C'est pas une bonne idee d'utiliser les CHR, car ils sont codesets specifiques. Ce qui fonctionne en ascii ne fonctionnera pas forcement le meme resultat et charactere en ebcdic.

  7. #7
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    ebcdic ?!!???

    quelle machine utilise encore ce jeu de caractères avec Oracle ?.....

  8. #8
    Membre émérite Avatar de plabrevo
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    548
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 548
    Par défaut
    ebcdic est juste un example. CHR n'est pas portable d'un codeset a un autre, donc son usage est a proscrire dans les standards de development.

    En ce qui concerne ebcdic, il est probable que la plupart des mainframes IBM l'utilisent, ce qui ne represente sans doute pas qu'un infime pourcentage de l'industrie.

  9. #9
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Citation Envoyé par plabrevo
    ebcdic est juste un example. CHR n'est pas portable d'un codeset a un autre, donc son usage est a proscrire dans les standards de development.

    En ce qui concerne ebcdic, il est probable que la plupart des mainframes IBM l'utilisent, ce qui ne represente sans doute pas qu'un infime pourcentage de l'industrie.
    Mainframes sur lesquels on ne trouvera probablement que du DB2.....

    Maintenant ma suggestion s'appliquait pour ceux qui travaillent en ASCII...

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

Discussions similaires

  1. Chaînes de caractères en PL/SQL
    Par nabelou1 dans le forum PL/SQL
    Réponses: 8
    Dernier message: 13/05/2008, 18h11
  2. [SQL] Remplacement de chaîne de caractères
    Par squal29 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 22/08/2006, 00h49
  3. Extraction d'une chaîne de caractère avec SQL
    Par opeo dans le forum MS SQL Server
    Réponses: 13
    Dernier message: 28/07/2006, 15h36
  4. Réponses: 3
    Dernier message: 07/12/2005, 10h09

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