За последние 24 часа нас посетили 17957 программистов и 1650 роботов. Сейчас ищет 1181 программист ...

значения по default

Тема в разделе "MySQL", создана пользователем TheHate, 31 мар 2017.

  1. TheHate

    TheHate Новичок

    С нами с:
    29 мар 2017
    Сообщения:
    23
    Симпатии:
    1
    вопрос по "мускул" версия 5.7.
    PHP:
    1. INSERT INTO news_category ( `name` ,  `sort_order` ) VALUES ( '111' ,  ' 123' );
    ответ "мускула":#1364 - Field 'description' doesn't have a default value

    документация: Error: 1364 SQLSTATE: HY000 (ER_NO_DEFAULT_FOR_FIELD)

    Message: Field '%s' doesn't have a default value


    Т.е., чтобы выполнить запрос, я должен либо установить для этого поля значение по умолчанию, либо в каждом запросе добавлять его хоть какое-то его значение?

    https://s22.postimg.org/p8c3g689d/Screen_20170331_151642.jpg
     
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    ага
     
    TheHate нравится это.
  3. TheHate

    TheHate Новичок

    С нами с:
    29 мар 2017
    Сообщения:
    23
    Симпатии:
    1
    и давно такой головняк добавили? обойти никак нельзя? а то запрос "немного" великоват получается , если у тебя напрмер 9 столбцов)
     
  4. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    как-то не следил
    значение по умолчанию
    всем по умолчанию добавь значение
     
    TheHate нравится это.
  5. TheHate

    TheHate Новичок

    С нами с:
    29 мар 2017
    Сообщения:
    23
    Симпатии:
    1
    а если нужно постоянно менять эти самые "по умолчанию". ???
     
  6. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    меняй при необходимости, главное что приоритет имеют те что в запросе, если стоит что-то по умолчанию то значение берётся из него при условии что в запросе отсуствует значение для этой колонки, а вот если есть значение по умолчанию и ты для этой колонки в запросе передал значение, то запишется значение из запроса
     
    TheHate нравится это.
  7. TheHate

    TheHate Новичок

    С нами с:
    29 мар 2017
    Сообщения:
    23
    Симпатии:
    1
    [​IMG] Ошибка запроса:
    #1101 - Невозможно указывать значение по умолчанию для столбца BLOB 'description'
     
  8. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    да, не везде можно указать данные по умолчанию
     
    TheHate нравится это.
  9. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.770
    Адрес:
    :сердА
    Автор, ты при создании таблицы пометил ряд столбцов как NOT NULL. А теперь хочешь ничего туда не писать при создании строки. По дефолту MySQL пишет в поле NULL. Но ты ему запретил это делать. MySQL говорит окей и лезет за дефолтным значением. А его нет, либо оно не может быть установлено. При этом сам ты ничего не передал. MySQL говорит - "иди вы все нахрен" и кидает в тебя ошибкой.

    Собсно, головняка никакого никто не добавлял. База работает ровно так, как ты сказал ей работать.
     
    TheHate нравится это.