|
|
|
| У меня возник небольшой вопросик, есть ли разница в скорости обработки запроса между int(1) и int(20) и на сколько она велика, есть смысл думать над этим при создании php+MySQL программ? Да, и еще, цифра в скобках обозначает количество символов?
Заранее спасибо! | |
|
|
|
|
|
|
|
для: Ziq
(15.03.2005 в 07:46)
| | На самом деле int(1) и int(20) - это один и тот же тип, занимают они один и тоже объём в базе данных - цифры после типа указывают сколько позиций будет отводится под вывод результата, например в клиенте mysql. Если вы хотите увеличить, уменьшить число байт отводимых под поле, следует менять сам тип ориентируясь на таблицу
TINYINT - 1 байт - от -128 до 127 (от -2^7 до 2^7-1) от 0 до 255 (от 0 до 2^8-1)
SMALLINT - 2 байта - от -32768 до 32767 (от -2^15 до 2^15-1) от 0 до 65535 (от 0 до 2^16-1)
MEDIUMINT - 3 байта - от -8388608 до 8388608 (от -2^23 до 2^23-1) от 0 до 16777215 (от 0 до 2^24-1)
INT - 4 байта - от -2147683648 до 2147683648 (от -2^31 до 2^31-1) от 0 до 4294967295 (от 0 до 2^32-1)
BIGINT - 8 байт - (от -2^63 до 2^63-1) (от 0 до 2^64)
|
Влияние на скорость обработки данных при переходе от одного целочисленного типа к другому минимально, здесь следует ориентироваться на диапазон - какое максимальное значение будут принимать поля таблицы.
http://www.softtime.ru/forum/read.php?id_forum=3&id_theme=2169 | |
|
|
|