-1
votes

Champ "quelquefield" n'a pas de valeur par défaut

J'envoie quelques détails de Postman à la base de données MySQL et il le reconnaît, mais je reçois cette erreur:

const userCreateModel = `
  CREATE TABLE IF NOT EXISTS users (
    id INT(11) NOT NULL AUTO_INCREMENT,
    username VARCHAR(45) NOT NULL,
    email VARCHAR(45) NOT NULL,
    phonenumber VARCHAR(45) NOT NULL,
    password VARCHAR(255) NOT NULL,
    creditcard INT(11) NOT NULL,
    salt VARCHAR(255),
    created_at DATE,
    update_at DATE,
    deleted_at DATE,
    lastSignIn DATE,
    PRIMARY key (id)
  )
`;


11 commentaires

CreditCard Int (11) Non NULL - Avez-vous fourni des données sur CreditCard?


@tpschmidt Évidemment, pas comme cette colonne n'apparaît pas dans la liste des colonnes :)


Puis définissez une valeur par défaut CreditCardT Int (11) Par défaut 0 Not NULL , sinon le NON NULL n'a aucun sens, non?


Cela ne fonctionne pas même sans le non nul.


pouvez-vous coller le nouveau code de table Create ici


Voici la partie: CreditCard Int (11),


Comme la création de table a créé une table si elle n'existe peut-être pas avoir créé une nouvelle table. essayez d'afficher les utilisateurs de table créer


Il dit que le tableau 'Les utilisateurs' existe déjà


Afficher les utilisateurs de la table Créer un tableau; - non seulement créer des utilisateurs de table dans votre éditeur MySQL, pas en code


J'ai écrit ça et il n'y a toujours pas null à côté de la carte de crédit, même si je l'ai changé sur le serveur, que dois-je faire maintenant?


Avez-vous accès à vous connecter à dB à l'aide des éditeurs MySQL? Êtes-vous autorisé à modifier la table?


3 Réponses :


2
votes
creditcard INT(11) NOT NULL,
While creating table you mentioned it should not accept null values and while inserting you missed to provide credit card infoSo either alter table to accept null values or provide credit card value while inserting

3 commentaires

J'ai retiré non nulle de la carte de crédit et cela ne fonctionne toujours pas.


Comme la création de table a créé une table si elle n'existe peut-être pas avoir créé une nouvelle table. essayez d'afficher créer des utilisateurs de table ou modifier la table existante ou déposer une table ancienne et créer une nouvelle table


J'ai compris! Merci pour votre aide, cela signifiait beaucoup!



0
votes

Votre champ de carte de crédit est défini comme non NULL, c'est pourquoi vous obtenez cette erreur lorsque vous ne donnez aucune valeur à ce champ.


2 commentaires

Non l'erreur est dus comme un champ défini comme non NULL n'a pas reçu une valeur dans la commande insertion


Ouais désolé je n'étais pas capable de transmettre ce que je voulais dire. Édité ma réponse merci pour la correction.



0
votes

Dans votre bloc d'essai, vous n'avez pas déclaré de champ pour votre carte de crédit


0 commentaires