Возник вопрос о последствиях превышения длины поля, к примеру возьмем поле id primary key, длина 11, тип таблицы InnoDB, что должно произойти? В качестве эксперимента создал таблицу, установил длину поля 1 для id, начал добавлять записи, по сути после значения 9 должно что-то произойти, но значение пошло далее расти - 10, 11... (что имеет длину 2, т.е. превысили указанное). Получается длина поля влияет только на занимаемую память, но никак не на его значения?
Размер, указываемый для поля типа int, не влияет на значения. И - как следствие - не влияет и на занимаемую память. Непонятно, с чего вы решили обратное.
Если поле типа int(1) позволяет сохранить значение 4294967295, то естественно, что и памяти оно будет занимать те же 4 байта, что и int(10)
Цифра эта ни на что не влияет, и имеет скорее декоративное значение.
Если хотите сократить память/предельное значение, то используйте другой тип поля -
TINYINT занимает 1 байт, до 255
SMALLINT занимает 2 байта, до 65535
MEDIUMINT - 3 байта, до 16777215
Да, я уже понял что, подразумевал что как и у varchar длина влияет на содержимое, и что-то должно происходить при его превышении. суть типа int понял, благодарю за дополнительное разъяснение