Продолжить публикацию NULL в базе данных (MySql)

module.exports = function (sequelize, Sequelize) {

    var User = sequelize.define('user', {
        id: { autoIncrement: true, primaryKey: true, type: Sequelize.INTEGER },
        firstname: { type: Sequelize.STRING, notEmpty: true },
        lastname: { type: Sequelize.STRING, notEmpty: true },
        //username: { type: Sequelize.TEXT },
        //about: { type: Sequelize.TEXT },
        mobileno: { type: Sequelize.STRING },
        email: { type: Sequelize.STRING, validate: { isEmail: true } },
        password: { type: Sequelize.STRING, allowNull: false },
        last_login: { type: Sequelize.DATE },
        //status: { type: Sequelize.ENUM('active', 'inactive'), defaultValue: 'active' }

    });

    return User;
}

Все остальное публикуется нормально, но mobileno публикуется как null в базе данных.

Я попытался установить номер мобильного телефона как allowNull = false, но это выдает ошибку.

Я также пытался изменить строку на текст, но это тоже не помогло...

Продолжить публикацию NULL в базе данных (MySql)

это ошибка после добавления allowNull=false..

Для опубликованного вами примера кода ожидается, что mobileno = null. Если вы установите его на: allowNull: false, какое сообщение об ошибке появится?

Rastalamm 12.07.2019 17:10
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
В предыдущем посте мы создали функциональность вставки и чтения для нашей динамической СУБД. В этом посте мы собираемся реализовать функции обновления...
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
Роли и разрешения пользователей без пакета Laravel 9
Роли и разрешения пользователей без пакета Laravel 9
Этот пост изначально был опубликован на techsolutionstuff.com .
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
2
1
2 171
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

После проверки документация ваш код работает нормально.

 // setting allowNull to false will add NOT NULL to the column, which means an error will be
 // thrown from the DB when the query is executed if the column is null. If you want to check that a value
 // is not null before querying the DB, look at the validations section below.
 title: { type: Sequelize.STRING, allowNull: false },

Перед сохранением в БД вам необходимо проверить свою информацию, чтобы убедиться, что mobileno не является null. Получив значение для mobileno, вы можете сохранить его в db.

Ответ принят как подходящий

Ваши проблемы в ваших данных, а не в вашей модели продолжения

Основываясь на вашем вопросе, я думаю, вы отправляете пустое значение для поля mobileno

О параметре AllowNull: когда вы устанавливаете значение false, это означает, что сиквелизация вернет ошибку, если вы не передадите параметр (что происходит в вашем случае)

По умолчанию значение AllowNull равно true

Мое предложение состоит в том, чтобы проверить ваши данные перед запросом на вставку, а также, когда вы запустите команду создания с помощью консоли проверки продолжения, она покажет, что вы вставляете в формат sql

нашел мою проблему ... я не разобрал ее правильно ... почему он отправлял нулевое значение в базу данных ...

Zuhaib 14.07.2019 06:59

Другие вопросы по теме