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

Requêtes PostgreSQL Discussion :

maj 1ère lettre d'une chaine


Sujet :

Requêtes PostgreSQL

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2003
    Messages : 11
    Points : 6
    Points
    6
    Par défaut maj 1ère lettre d'une chaine
    ce que je voudrais faire c'est juste pour chaque prénom apres insertion mettre la premiere lettre du prénom en majuscule et tout le reste en miniscule

    exemeple

    prénom
    ---------

    Robert
    Arlette

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2003
    Messages : 11
    Points : 6
    Points
    6
    Par défaut
    Affected Rows: 0
    SQL-query:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    CREATE FUNCTION "fctmajlettre "(varchar) RETURNS numeric AS 'declare
    enr RECORD;
    BEGIN
    FOR enr in select * from patient loop
    update patient set pre_patient = upper(enr.pre_patient[1]) 
    where pre_patient = enr.pre_patient;
    end loop;
    return 1;
    end;' LANGUAGE 'plpgsql'

    j'ai essayé en utilisant [1] mais sa marche pas !


    Modéré par stessy
    Ajout de balises [code]
    Prière de lire les règles du forum

    Merci

  3. #3
    Futur Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 6
    Points : 7
    Points
    7
    Par défaut
    essaye avec initcap à la place de upper

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    update patient set pre_patient = initcap(enr.pre_patient)
    Modéré par stessy
    Ajout de balises [code]
    Prière de lire les règles du forum

    Merci


  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2003
    Messages : 11
    Points : 6
    Points
    6
    Par défaut
    non il n'y aucun changement que sa soit avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set pre_patient = initcap(enr.pre_patient[1])
    ou avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set pre_patient = initcap(enr.pre_patient)
    snif


    Modéré par Stessy
    Ajout de balises [code]
    Prière de lire les règles du forum

    Merci

  5. #5
    Futur Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 6
    Points : 7
    Points
    7
    Par défaut
    Pourtant initcap marche quand tu fais une requete à la main !
    c'est surement ta fonction qui est fausse
    moi je ferai un truc comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    CREATE FUNCTION fctmajlettre_function() RETURNS TRIGGER
    AS '
    BEGIN
    NEW.pre_patient := initcap(OLD.pre_patient);
    RETURN NEW;
    END;'
    LANGUAGE 'plpgsql';
    ensuite
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CREATE TRIGGER fctmajlettre_trigger
    BEFORE INSERT OR UPDATE
    ON patient
    FOR EACH ROW
    EXECUTE PROCEDURE fctmajlettre_function();
    je n'ai pas testé et je sais pas si ça peut marcher.

    Bon courage

    Modéré par Stessy
    Ajout de balises [code]
    Prière de lire les règles du forum

    Merci

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2003
    Messages : 11
    Points : 6
    Points
    6
    Par défaut
    hélas sa ne marche toujours pas, pourtant c bete que avec upper et en isolant la première lettre avec [1] on ne puisse pas mettre en majuscule!

Discussions similaires

  1. Lettres d'une chaine dans un tableau
    Par Girzi dans le forum Langage
    Réponses: 2
    Dernier message: 07/07/2006, 09h36
  2. [C#]Remplacer 1ère occurence d'une chaine dans une autre!
    Par Bils dans le forum Windows Forms
    Réponses: 4
    Dernier message: 26/04/2006, 12h57
  3. Récupérer les deux premières lettres d'une chaine
    Par moscovisci dans le forum ASP
    Réponses: 3
    Dernier message: 10/01/2006, 14h53
  4. recupérer la 1ere lettre d'une chaine
    Par ericmart dans le forum ASP
    Réponses: 10
    Dernier message: 10/11/2004, 09h42
  5. maj 1ère lettre d'une chaine
    Par access001 dans le forum PostgreSQL
    Réponses: 5
    Dernier message: 04/07/2003, 12h27

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