![]() |
lamers
Здравствуйте, Хакеры! Подскажите пожалуйста ламеру!
Что означает в MySQL запись характеристики поля ввиде int(chislo) ? А конкретно интересует то, что помещается в скобках! Спасибо! |
ТИП(chislo) непременимо для типа int (то есть безполезно). на int выделяется всегда одно постоянное кол-во байт - 4. и изменение chislo ни на что не повлияет. другое дело varchar etc
|
Методом логического анализа мы с господином, коего называть не буду, пришли к выводу что запись не имеет смысла, т.к. память выделяется под поле одна и та же. Однако количественного анализа не проводилось, т.к. я ухожу спать. Завтра почитаю компетентнейшие овтеты, особливо будем ждать Егора и Тринукса.
Спкойной всем ночи |
кто же это???
вот http://www.mysql.ru/docs/man/Storage_requirements.html int(число) вообще не определено. хотя бы потому что такие числа в формате "числа" хранить просто невозможно. другое дело что мускуль для арифметических операций использует длинную арифметику ;) |
CREATE TABLE shop (
article INT(4) UNSIGNED ZEROFILL DEFAULT '0000' NOT NULL, dealer CHAR(20) DEFAULT '' NOT NULL, price DOUBLE(16,2) DEFAULT '0.00' NOT NULL, PRIMARY KEY(article, dealer)); данные для примера будут такими: mysql> SELECT * FROM shop; +---------+--------+-------+ | article | dealer | price | +---------+--------+-------+ | 0001 | A | 3.45 | | 0001 | B | 3.99 | | 0002 | A | 10.99 | | 0003 | B | 1.45 | | 0003 | C | 1.69 | | 0003 | D | 1.25 | | 0004 | D | 19.95 | +---------+--------+-------+ максимальное значание равно 4 а минимальное кажись 2 int(chislo) - это определить значение в столбце кажись так... если что не так будет самому интересно узнать правильный ответ =) |
2PSalm69 нет, это не так :)
|
=)))) ну даете =))) может памяти и выделяется одинаковое количество, но вот индекс по полю строится совсем по другому принципу. Если поле индексируется (любым индексом), то намного оптимальнее использовать точное количество нулей. Чем меньше индекс, тем быстрее поиск по нему, это очевидно )
|
Пордон, а что значит одинаковое количество нулей? У меня в независимости от значния chisl'а в ячейку таблицы можно разместить число из одного и тогоже диапазона
Если учитывать знаковый бит, то этот диапазон соствляет [-0x7FFFFFFF; 0x7FFFFFFF] =D |
http://www.sql.ru/docs/mysql/rus%5Fref/sql.shtml#Create
Это как оно должно будет выглядеть, при выводе результатов запроса. |
Цитата:
|
| Время: 00:50 |