Известно, что для уникальных индексов с несколькими столбцами, если одно из значений равно NULL, все ограничение нарушается.Некоторые думают, что это не должно быть поведение , но другие думают, что это правильный способ обработки таких случаев.
Один из предложенных обходных путей - использовать, например, пустую строку по сравнению с непустойстроки для обработки таких случаев.
Я использую Laravel 5 с SoftDeletes на моих моделях.В этом шаблоне у меня есть столбец deleted_at
, который, когда NULL, означает, что он не удален;когда not-null, представляет время, когда строка была удалена.Однако я не могу использовать значение по умолчанию, такое как предложенный обходной путь, потому что оно будет рассматриваться системой как удаленное.
Как я могу обойти это на Laravel или MySQL, чтобы я мог удалить в качествеобнуляемый уникальный индекс?