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

SQL Oracle Discussion :

[DEBUTANT] UPDATE partiel sur un champ.


Sujet :

SQL Oracle

  1. #1
    Membre du Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Juin 2008
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2008
    Messages : 30
    Points : 46
    Points
    46
    Par défaut [DEBUTANT] UPDATE partiel sur un champ.
    Bonjour à tous,

    Tout d'abord je suis débutant, enfin, avec les termes du SGBD.
    Si vous ne comprenez pas ce qui suit, c'est que je me suis (encore) croisé les pinceaux ^^

    J'ai une table "UTILISATEURS" qui a 3 colonnes :

    ID - DATE - INFOS

    Je dois faire un UPDATE sur la colonne DATE (mettre la date de la forme "01 JANVIER 2009" -> "20090101").

    Jusqu'à la rien de compliqué, hors la ligne INFOS contient elle aussi la date (exemple d'une ligne INFOS : "01 JANVIER 2009;TRUC;BIDULE;MACHIN").

    Il faut aussi que la ligne INFOS passe du format ci avant à celui-ci : "20090101;TRUC;BIDULE;MACHIN".

    Il faut donc que je puisse modifier toutes les lignes ayant un format de DATE particulier (JJ MMMM AAAA) mais aussi ma ligne d'INFOS tout en conservant les informations déjà présentes dans cette ligne.

    Il y'a t'il un moyen "simple" de le faire ?

    Je vous remercie par avance de vos réponses

  2. #2
    Membre habitué
    Inscrit en
    Janvier 2009
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 162
    Points : 181
    Points
    181
    Par défaut
    bonjour,

    Si ta colonne DATE est au format DATE il est vain de changer son format, il te suffit de gérer son format d'affichage via TO_CHAR ou par paramétrage (nls_date_format).
    En revanche pour le champ INFO une solution consiste à extraire la date avec INSTR et SUBSTR puis la convertir avec quelque chose du style
    to_char(to_date(ta_chaine_date,'DD MONTH YYYY'),'YYYYMMDD') et recoller la suite du champ.

  3. #3
    Membre régulier
    Homme Profil pro
    Médecin.
    Inscrit en
    Septembre 2008
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Médecin.
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2008
    Messages : 96
    Points : 94
    Points
    94
    Par défaut
    Citation Envoyé par vantom Voir le message
    Je dois faire un UPDATE sur la colonne DATE (mettre la date de la forme "01 JANVIER 2009" -> "20090101").
    Je ne pense pas qu'il s'agisse d'un update.
    Si c'est pour que ta requête marche et que oracle comprenne tes dates il faut mettre en début de requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER SESSION SET NLS_DATE_FORMAT='dd month yyyy';
    Ensuite pour l'affichage des résultats (sous Excel, ou SAS par exemple), tu appliques le format que tu veux.

  4. #4
    Membre régulier
    Homme Profil pro
    Médecin.
    Inscrit en
    Septembre 2008
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Médecin.
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2008
    Messages : 96
    Points : 94
    Points
    94
    Par défaut
    J'avais pas bien compris la 2° partie de la question :
    Si la date dans info est différente de la colonne date il serait plus simple de créer une colonne pour cette date ?
    Sinon, si c'est la même, concaténation au moment de l'affichage du résultat.

  5. #5
    Membre du Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Juin 2008
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2008
    Messages : 30
    Points : 46
    Points
    46
    Par défaut
    Problème résolue.

    Je suis passé par une autre méthode, totalement différente sans toucher à la base.

    Merci a tous pour votre temps, et vos conseils

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

Discussions similaires

  1. jointure partielle sur un champ
    Par JauB dans le forum DB2
    Réponses: 3
    Dernier message: 12/01/2007, 11h18
  2. Update avec du chinois sur un champ nvarchar
    Par broux dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 27/02/2006, 14h16
  3. [SQL Server] Requete update sur 2 champs
    Par galou10 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 21/02/2006, 20h22
  4. Probleme d'UPDATE sur un champ text
    Par Nip dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 08/07/2005, 11h35
  5. [Debutant] GROUP BY sur les premiers caracteres d'un champ
    Par seb-astien dans le forum Langage SQL
    Réponses: 8
    Dernier message: 09/11/2004, 14h53

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