Ограничения типов данных

#mysql #teradata

#mysql #teradata

Вопрос:

Почему у нас есть ограничение на типы данных, такие как Char и varchar и т. Д., Но не на целое число? Почему он разработан таким образом?

Например: мы можем определить char(8), но мы не можем определить Int(8) или integer(8) . Для него было бы сохранено не более 11 символов.

Комментарии:

1. потому что целые числа хранятся не как «символы», а . но в виде двоичных значений … для хранения 256 (0-225) требуется только один байт.. не 3 .. для 256×256 .. 2 байта … не 5

Ответ №1:

Целое число имеет фиксированный размер в 1-8 байтов, в зависимости от того, какой тип вы определили.

char имеет фиксированный размер байтов на символ, поэтому вы определили размер символа 8, который вы получаете в 8 раз больше, если символ.

Поскольку нет смысла ограничивать этот фиксированный размер в байтах, mysqkl, наконец, удалил его (в будущем) и выдает предупреждение, когда вы создаете целое число с размером