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 :

Requête d'initialisation d'une table


Sujet :

PL/SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 1
    Par défaut Requête d'initialisation d'une table
    Bonjour,

    Débutant en la matière je cherche à réaliser une initialisation conditionnelle d'un nouveau champ que je crée dans ma table sous SQL Developer.

    Je m'explique, je réalise l'opération suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    alter table MATABLE
    drop NOUVEAUCHAMP;
     
    alter table MATABLE
    add NOUVEAUCHAMP varchar2(1) default '0';
    Je dispose d'un champ dans ma table que je vais appeler CHAMP_DATE contenant des dates au format number (jjmmaaaa) je souhaiterai initialiser mon champ NOUVEAUCHAMP à '9' si la date contenue dans CHAMP_DATE est inférieure au 1er janvier 2012 ou à '0' dans les autres cas.

    Avez vous une idée de la manière de procéder ?

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Citation Envoyé par Demorgh Voir le message
    Je dispose d'un champ dans ma table que je vais appeler CHAMP_DATE contenant des dates au format number (jjmmaaaa)
    Ça commence mal, pourquoi ne pas enregistrer cette donnée au format date ?
    C'est fait pour.

    Default ne permet que l'utilisation d'une expression simple, je pense qu'il vous faudra créer un déclencheur sur votre table.

    Edit : la documentation Oracle précise :
    DEFAULT

    The DEFAULT clause lets you specify a value to be assigned to the column if a subsequent INSERT statement omits a value for the column. The data type of the expression must match the data type of the column. The column must also be long enough to hold this expression.

    The DEFAULT expression can include any SQL function as long as the function does not return a literal argument, a column reference, or a nested function invocation.

    Restriction on Default Column Values
    A DEFAULT expression cannot contain references to PL/SQL functions or to other columns, the pseudocolumns CURRVAL, NEXTVAL, LEVEL, PRIOR, and ROWNUM, or date constants that are not fully specified.

  3. #3
    Membre Expert

    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    536
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 536
    Par défaut
    Citation Envoyé par Demorgh Voir le message
    Bonjour,

    Je dispose d'un champ dans ma table que je vais appeler CHAMP_DATE contenant des dates au format number (jjmmaaaa)
    Vous n'allez quand même pas faire cela!!!!

    je vous prie de toujours mettre

    (a) les dates dans les dates
    (b) les caractères dans les caractères
    (c) les nombres dans les nombres

    Votre design sera bien renforcé

    Bien cordialement

    Mohamed Houri

Discussions similaires

  1. [Requête SQL] Relation d'une table à elle-même
    Par ellix86 dans le forum Développement
    Réponses: 4
    Dernier message: 16/03/2009, 14h52
  2. requète sql et ajout à une table
    Par carlostropico dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 16/02/2009, 08h49
  3. Requête de structure d'une table
    Par warning dans le forum Sql*Plus
    Réponses: 2
    Dernier message: 07/10/2008, 13h17
  4. affecter les resultats d'une requête à un champs dans une table
    Par benoist.cardinal dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 05/09/2008, 21h00
  5. ajouter le résultat d une requête à la variable d une table
    Par Claire07 dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 19/06/2006, 14h03

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