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 MySQL Discussion :

Valeur par défaut d'un champ de type "text"


Sujet :

Requêtes MySQL

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 46
    Points : 35
    Points
    35
    Par défaut Valeur par défaut d'un champ de type "text"
    Bonjour,

    J'aimerai mettre une valeur par default a mon champ " commentaire " afin de m'aider dans mon code PHP. J'ai cherché sur internet et j'ai trouvé cette syntaxe qui ne fonctionne pas ...

    `commentaire`text DEFAULT 'mavaleur',

    voici mon code complet :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    CREATE TABLE IF NOT EXISTS `client` 
    (
      `idclient` int(11) NOT NULL AUTO_INCREMENT,
      `nomsociete` varchar(20) NOT NULL,
      `nompersonne` varchar(25) NOT NULL,
      `numtel` varchar(10) NOT NULL,
      `emailcontact` varchar(25) DEFAULT NULL,
      `marque` varchar(20) DEFAULT NULL,
      `modelmateriel` varchar(20) DEFAULT NULL,
      `numserie` varchar(20) DEFAULT NULL,
      `etatprobleme` varchar(10) DEFAULT NULL,
      `numdossier` varchar(20) DEFAULT NULL,
      `descriptifProbleme` text,
      `commentaire1` text DEFAULT 'mavaleur'
    }
    Je sais que cette question est bête, mais je bloque complètement

    Erreur :

    MySQL a répondu:

    #1101 - BLOB/TEXT column 'commentaire1' can't have a default value

    Dois je changer de type de donnée ?

  2. #2
    Membre expert

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2012
    Messages
    612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2012
    Messages : 612
    Points : 3 066
    Points
    3 066
    Par défaut
    Bonjour,

    Le message d'erreur est clair : une colonne de ce type ne peut pas avoir de valeur par défaut.
    Il faut donc soit changer le type, soit revoir votre façon de fonctionner.

    Je pense que la seconde solution est bien meilleure. Utiliser une valeur par défaut dans une base de données pour simplifier un traitement PHP me semble une mauvaise idée.
    Si vous souhaitez des suggestions sur ce point, n'hésitez pas à détailler vos besoins.

    Cordialement,
    FSiebert

  3. #3
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345
    Par défaut
    bonjour,

    Avec un trigger vous devriez arriver à vos fin.

    Sinon passez votre colonne en varchar(X) pour pouvoir mettre une valeur par défaut.

    D'ailleur si vous avez une limite applicative au nombre de caractère saisissable, un varchar sera suffisant. http://dev.mysql.com/doc/refman/5.5/...uirements.html

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 46
    Points : 35
    Points
    35
    Par défaut
    Ok je vais essayer merci. Mais 255 je sais pas si c'est suffisant a chaque fois

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 46
    Points : 35
    Points
    35
    Par défaut
    tout fonctionne avec un varchar(255).
    Je suis par contre limité a 255 caracteres. Je vais voir se que je peux faire.


    Merci beaucoup !

  6. #6
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345
    Par défaut
    La taille max de votre varchar va dépendre de :
    - votre collation
    - la taille des autre colonnes présentes.

    tout est indiqué dans le lien que je vous ai donné. (vous n'êtes pas limtié à 255)

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

Discussions similaires

  1. Formatage d'une valeur par défaut d'un champ de type text
    Par petit.quent dans le forum Balisage (X)HTML et validation W3C
    Réponses: 10
    Dernier message: 02/01/2012, 15h14
  2. [1.x] Valeur par défaut pour les champ type Boolean
    Par Niki59 dans le forum Symfony
    Réponses: 0
    Dernier message: 28/04/2011, 15h55
  3. [SQL - Access] Valeur par défaut d'un champs
    Par Demiurge dans le forum Access
    Réponses: 2
    Dernier message: 11/02/2005, 18h16
  4. Valeur par défaut d'un champ date
    Par Fabby69 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 17/09/2004, 13h48
  5. Réponses: 2
    Dernier message: 18/10/2003, 15h42

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