В русскоязычном сегменте не так много информации о выборе режимов для данного параметра. Часто это либо просто их перечисление, либо рассмотрена лишь небольшая часть, либо просто устаревшая информация.
На хабре есть несколько постов о режимах sql_mode в MySQL:
habrahabr.ru/post/166411habrahabr.ru/post/116922
Значение параметра по умолчанию:
- До 5.6.6 - "" (пустое значение)
- Начиная с 5.6.6 - NO_ENGINE_SUBSTITUTION
- Начиная с 5.7.5 - ONLY_FULL_GROUP_BY, NO_ENGINE_SUBSTITUTION, STRICT_TRANS_TABLES
Предлагаю в этом вопросе поделиться опытом, какие плюсы/минусы вы обнаружили для себя при включении/невключении того или иного режима. Соберем, так сказать, базу знаний по данному параметру.
У кого какие значения на продакшенах? Как эти режимы повлияли на написание вами кода в используемых вами языках программирования? Может они каким-то образом сломали сторонние скрипты и приложения?
Чем больше режимов мы тут обсудим, тем, разумеется, лучше.
Возможно, мы даже прийдем к некоторой типовой конфигурации данного параметра на сегодняшний день.