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

Langage SQL Discussion :

Valeur Par défaut


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Poussy-Puce
    Profil pro
    Développeur Web
    Inscrit en
    Octobre 2005
    Messages
    357
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2005
    Messages : 357
    Par défaut Valeur Par défaut
    J'essaye de mettre une valeur par défaut dans une table, voici ma requête:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER TABLE prosyncmarketingnutrition ALTER COLUMN ServingSize SET DEFAULT ''
    et voici mon message d'erreur:

    Server: Msg 156, Level 15, State 1, Line 1
    Incorrect syntax near the keyword 'SET'.


    Est-ce que quelqu'un peut m'aider???

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 91
    Par défaut
    Il me semble qu'il s'agit du "SET" qui n'est pas correct dans la syntaxe.

    Je mettrais plutot :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ALTER TABLE prosyncmarketingnutrition ALTER COLUMN ServingSize DEFAULT ''

  3. #3
    BiM
    BiM est déconnecté
    Expert confirmé
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ALTER TABLE prosyncmarketingnutrition
    ADD CONSTRAINT ServingSize DEFAULT ''
    Il me semble que le ALTER COLUMN ou MODIFY COLUMN ne fonctionne que pour le changement de type.

    Ou alors il faudrait peut être redire le type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ALTER TABLE prosyncmarketingnutrition
    ALTER COLUMN ServingSize leType DEFAULT ''

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 91
    Par défaut
    Oui BiMouXeTTe, il me semble que tu as raison. J'avais pas fait attention. Je crois que le "default" ne marche que pour les ADD COLUMN.

  5. #5
    Membre éclairé Avatar de Poussy-Puce
    Profil pro
    Développeur Web
    Inscrit en
    Octobre 2005
    Messages
    357
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2005
    Messages : 357
    Par défaut
    Bon voici les requête que j'ai essayer et leur message d'erreur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alter table prosyncmarketingnutrition alter column ServingSize DEFAULT ''
    Server: Msg 156, Level 15, State 1, Line 1
    Incorrect syntax near the keyword 'DEFAULT'.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ALTER TABLE prosyncmarketingnutrition 
    ADD CONSTRAINT ServingSize DEFAULT ''

    Server: Msg 142, Level 15, State 2, Line 2
    Incorrect syntax for definition of the 'TABLE' constraint.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ALTER TABLE prosyncmarketingnutrition 
    ALTER COLUMN ServingSize varchar(8) DEFAULT ''
    Server: Msg 156, Level 15, State 1, Line 2
    Incorrect syntax near the keyword 'DEFAULT'.



    Si vous avez d'autre test...

  6. #6
    Xo
    Xo est déconnecté
    Membre Expert
    Avatar de Xo
    Inscrit en
    Janvier 2005
    Messages
    2 701
    Détails du profil
    Informations personnelles :
    Âge : 52

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 701
    Par défaut
    On ALTER des tables, on MODIFY des champs

    Testé sous Oracle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SQL> CREATE Table TEST (
      2  monChamp VARCHAR2(32) DEFAULT 'TEST');
     
    Table créée.
     
    SQL> ALTER TABLE TEST MODIFY monChamp DEFAULT '';
     
    Table modifiée.
    "Ce que l'on conçoit bien s'énonce clairement,
    Et les mots pour le dire arrivent aisément." Nicolas Boileau

    "Expliquer empêche de comprendre si cela dispense de chercher"

    Quiz Oracle : venez tester vos connaissances !

    La FAQ Oracle : 138 réponses à vos questions
    Aidez-nous à la compléter

  7. #7
    BiM
    BiM est déconnecté
    Expert confirmé
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Par défaut
    Sous SQL Server on ALTER des tables et on ALTER des champs

    De toute façon le problème ne vient pas du mot clef ALTER ou MODIFY.

  8. #8
    Membre éclairé Avatar de Poussy-Puce
    Profil pro
    Développeur Web
    Inscrit en
    Octobre 2005
    Messages
    357
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2005
    Messages : 357
    Par défaut
    Bon, ben j'ai essayer deux trucs et ça ne marche toujours pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER TABLE prosyncmarketingnutrition MODIFY ServingSize DEFAULT ''

    Server: Msg 170, Level 15, State 1, Line 1
    Line 1: Incorrect syntax near 'ServingSize'.

    (J'ai revérifier la syntaxe de mon champs!!!)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER TABLE prosyncmarketingnutrition MODIFY COLUMN ServingSize DEFAULT ''
    Server: Msg 156, Level 15, State 1, Line 1
    Incorrect syntax near the keyword 'COLUMN'.
    [/i]

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 91
    Par défaut
    Le test de Xo ne fonctionne pas vraiment chez moi sous MySQL :

    meme si la syntaxe est différente :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ALTER TABLE TEST MODIFY COLUMN monChamp varchar(32) DEFAULT '';
    La requête s'exécute correctement mais si monChamp valait "salut" avant, la valeur sera la même après...

    je sais que avec les ADD Column ca marche :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ALTER TABLE TEST ADD COLUMN monChamp2 varchar(32) DEFAULT ''";
    Donc si le but ici est de modifier la colonne pour la mettre à vide, autant la supprimer et la recréer de cette manière non?

  10. #10
    Membre éclairé Avatar de Poussy-Puce
    Profil pro
    Développeur Web
    Inscrit en
    Octobre 2005
    Messages
    357
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2005
    Messages : 357
    Par défaut
    Non, car il y a déjà des valeurs dans cette colonne, et il faut que je fasse ça en gros, genre une table avec environ 150 colonnes, qui ont toutes des valeurs dedans.

    Y faut que j'enlève les Null, choses que j'ai déjà faite, et il faut que je mette la valeur par défaut à '', pour empêcher les null (que de toute façon je n'autorise plus!).

  11. #11
    BiM
    BiM est déconnecté
    Expert confirmé
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Par défaut
    Citation Envoyé par Bartuk
    Le test de Xo ne fonctionne pas vraiment chez moi sous MySQL :

    meme si la syntaxe est différente :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ALTER TABLE TEST MODIFY COLUMN monChamp varchar(32) DEFAULT '';
    La requête s'exécute correctement mais si monChamp valait "salut" avant, la valeur sera la même après...
    Mettre une valeur par défaut ne veut pas dire supprimer toutes celles déjà existantes...

    Le ADD CONSTRAINT devrais exister mais je n'arrive pas à définir la syntaxe exacte, à toi d'essayer différents trucs !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER TABLE prosyncmarketingnutrition ADD CONSTRAINT ServingSize DEFAULT ''

  12. #12
    Membre éclairé Avatar de Poussy-Puce
    Profil pro
    Développeur Web
    Inscrit en
    Octobre 2005
    Messages
    357
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2005
    Messages : 357
    Par défaut
    Je l'ai

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ALTER TABLE prosyncmarketingnutrition
      ADD CONSTRAINT ServingSize DEFAULT ('') FOR ServingSize

    Je sais vraiment pas à quoi sert le FOR, mais bon...


    Un gros merci à tout le monde!!!




  13. #13
    BiM
    BiM est déconnecté
    Expert confirmé
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ALTER TABLE prosyncmarketingnutrition
    ADD CONSTRAINT ServingSize
    DEFAULT ('')
    FOR ServingSize
    Traduction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ALTER TABLE NomTable
    ADD CONSTRAINT NomContrainte
    DEFAULT (Valeur)
    FOR TelleColonne

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 06/07/2004, 17h46
  2. Valeur par défaut dun DBLookupcombobox
    Par lol_adele dans le forum Bases de données
    Réponses: 2
    Dernier message: 13/05/2004, 09h08
  3. Valeur par défaut dans une table objet
    Par Ricky81 dans le forum Oracle
    Réponses: 12
    Dernier message: 18/03/2004, 11h52
  4. Réponses: 2
    Dernier message: 18/10/2003, 14h42
  5. Unique + valeur par défaut
    Par ketalie dans le forum Outils
    Réponses: 4
    Dernier message: 02/07/2003, 15h29

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