J'ai formaté mon pc il y a quelques jours, j'ai donc du réinstaller wamp. Cependant, à présent, il ne veut plus ajouter de lignes dans mes tables si je ne renseigne pas tous les champs dans la requête.
Par exemple, si ma table est constitué de 4 champs :
Id int ai
champs_1 varchar 255
champs_2 varchar 255
champs_3 varchar 255
Cette requête va fonctionner :
INSERT INTO table SET champs_1 = 'test', champs_2 = 'test', champs_3 = 'test'
Mais cette requête ne fonctionne pas :
INSERT INTO table SET champs_1 = 'test', champs_2 = 'test'
Cette seconde requête fonctionne très bien sur mon site en ligne mais plus en local avec wamp depuis que je l'ai réinstallé.
Ta colonne champs_3 n'a dès lors vraisemblablement pas de valeur par défaut. Et la structure de tes tables entre local et "en ligne" ne doivent pas en être strictement identiques.
Enfin, bon, c'est toujours pareil, avec les erreurs SQL activées et affichées, ça devrait apparaître de manière très explicite ...
J'avais bien compris qu'en mettant une valeur par défaut à la colonne champs_3, cela résoudrait le problème. Cependant, après quelques recherches, je ne savais pas qu'il était recommandé et maintenant obligé de mettre une valeur par défaut pour les cas comme celui-ci. Je n'avais jamais eu ce problème avant alors que je ne met jamais de valeur par défaut "pour rien".
Je pensais que mon problème venait d'une option Wamp ou quelque chose du genre. Ma table en ligne est exactement identique à celle local, car j'ai effectué un export du local pour l'importer en ligne.
Je te remercie de ton aide et je ferais plus attention la prochaine fois pour poster au bon endroit.
Yep, la valeur par défaut c'est NULL donc c'est que ta colonne devait être en NOT NULL.
> Ma table en ligne est exactement identique à celle local
C'est strictement impossible qu'elles soient en tout point identiques mais que l'une "accepte" l'omission de champs_3 mais pas l'autre. Ou alors il y a une "bizarrerie" genre il y a une valeur par défaut (explicite non NULL - puisque NULL != NULL) mais elle est ou fait partie d'une clé primaire ou unique et que tu te retrouvais avec un doublon. Mais bon, encore une fois, on est en plein dans le domaine de l'hypothétique, tu aurais les erreurs, tu n'aurais même pas posé la question et aurais eu la réponse tout de suite.
Ou encore un trigger levant une exception ?
> Je pensais que mon problème venait d'une option Wamp ou quelque chose du genre.
Non
> j'ai effectué un export du local pour l'importer en ligne
Données uniquement ?
CREATE TABLE avec un IF NOT EXISTS ? Modifiée entre temps ? D'un côté mais pas de l'autre ?
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli
Activer les erreurs PDO / (julp) htmlspecialchars / FAQ PHP / Pas d'aide par MP
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli