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

Outils MySQL Discussion :

problème de champs not null qui sont marqués null à la création


Sujet :

Outils MySQL

  1. #1
    Membre du Club Avatar de Elianora la blanche
    Femme Profil pro
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 102
    Points : 59
    Points
    59
    Par défaut problème de champs not null qui sont marqués null à la création
    bonjour

    je crée une table en innodb pour enregistrer des bannières de pub d'annonceurs externes

    voici l'ordre de création de la table :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    CREATE TABLE publicite_annonceur (
      id_publicite_annonceur INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
      type_bandeau VARCHAR(60) NOT NULL,
      url_bandeau VARCHAR(255) NOT NULL,
      duree_affichage INTEGER UNSIGNED NOT NULL,
      nombre_affichage INTEGER UNSIGNED NOT NULL,
      ordre_affichage INTEGER UNSIGNED NOT NULL,
      page_rank INTEGER UNSIGNED NOT NULL,
      date_debut DATE NOT NULL,
      date_fin DATE NOT NULL,
      code_pays CHAR(3) NOT NULL,
      PRIMARY KEY(id_publicite_annonceur)
    )
    TYPE=InnoDB;
    tous les champs de cette table se retrouvent null après création (même la clé primaire)

    c'est la seule table qui se comporte comme ça, alors qu'il y en a d'autres du même genre
    j'ai essayé de la renommer (au cas où des termes seraient réservés) mais ça ne change rien

    une fois dans phpmyadmin, si j'essaye de modifier en direct les champs pour les remettre en not null, ça m'indique que les changements ont bien été effectués mais ça reste pareil


    je ne comprends pas ce qui se passe avec cette table, est-ce mon allergie chronique aux pubs?

    merci d'avance

  2. #2
    Membre habitué Avatar de scorpion.os
    Homme Profil pro
    Chef de projet Cobol/AS400
    Inscrit en
    Mai 2006
    Messages
    159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet Cobol/AS400

    Informations forums :
    Inscription : Mai 2006
    Messages : 159
    Points : 131
    Points
    131
    Par défaut
    en fait,je viens de copier ton code et je l'ai testé,ca marche bien,je ne comprend pas vraiment ton probleme.j'ai meme fait une insertion et ca marche

  3. #3
    Membre du Club Avatar de Elianora la blanche
    Femme Profil pro
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 102
    Points : 59
    Points
    59
    Par défaut
    de pire en pire : j'ai testé sur un autre serveur et ça fonctionne sur un seul

    1er serveur : 5.0.30-Debian_0.dotdeb.1-log et phpMyAdmin - 2.9.0.3-Debian-1 => ça fonctionne normalement
    2eme serveur : MySQL 5.0.30-Debian_0.dotdeb.1-log et phpMyAdmin 2.6.2-Debian-3sarge3 => ça ne fonctionne pas (les not null deviennent null)

    je me demande si c'est pas plutôt un bug de phpmyadmin...

  4. #4
    Membre habitué Avatar de scorpion.os
    Homme Profil pro
    Chef de projet Cobol/AS400
    Inscrit en
    Mai 2006
    Messages
    159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet Cobol/AS400

    Informations forums :
    Inscription : Mai 2006
    Messages : 159
    Points : 131
    Points
    131
    Par défaut

    je l'ai testé sous Mysql 5.0.27

  5. #5
    Membre du Club Avatar de Elianora la blanche
    Femme Profil pro
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 102
    Points : 59
    Points
    59
    Par défaut
    je ne pense pas que ce soit un problème de version de Mysql puisque les deux serveurs sur lesquels j'ai testé sont exactement de la même version

    je viens de recréer la totalité de ma base et désormais, sur le serveur qui merde, toutes les tables subissent le même traitement, tous les not null deviennent null

    même si ça résoud pas le problème, c'est déjà plus cohérent

  6. #6
    Membre éprouvé
    Avatar de Sivrît
    Profil pro
    Inscrit en
    Février 2006
    Messages
    953
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2006
    Messages : 953
    Points : 1 249
    Points
    1 249
    Par défaut
    On a eu un thread dans le même genre et c'était le client. Il semble que phpMyAdmin (ou du moins certaines versions) n'affiche pas la 'nullabilité' correctement. Il est possible que la table soit définie correctement quand même.

    Il faudrait essayer un 'desc publicite_annonceur' (éventuellement en pasant par le client ligne de commande). Sinon le test qui ne trompe pas : une insertion qui viole les règles définies.

  7. #7
    Membre du Club Avatar de Elianora la blanche
    Femme Profil pro
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 102
    Points : 59
    Points
    59
    Par défaut
    mon admin serveur a regardé en ligne de commande, les tables sont bien avec null là où il n'en faudrait pas
    par contre il me dit que c'est pas grave...
    je me demande quand même d'où ça peut venir, et pourquoi ça ne fait pas la même chose sur les deux serveurs qui ont la même version de MySQL exactement

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

Discussions similaires

  1. update ou champs not NULL
    Par magic charly dans le forum Oracle
    Réponses: 2
    Dernier message: 19/02/2007, 17h08
  2. [vb.net][LDAP]Problème sur champs non renseignés NULL
    Par JFLESUEUR dans le forum ASP.NET
    Réponses: 2
    Dernier message: 14/12/2006, 17h02
  3. [Access][SQL] Filtrer un champ text qui peut être NULL
    Par aumax1 dans le forum VBA Access
    Réponses: 1
    Dernier message: 04/04/2006, 09h40
  4. [TStringField] inserer dans un champs NOT NULL une chaine vi
    Par kase74 dans le forum Bases de données
    Réponses: 2
    Dernier message: 16/09/2005, 15h48

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