#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, наконец, удалил его (в будущем) и выдает предупреждение, когда вы создаете целое число с размером