SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 21.08.2010 18:07:08

Марк
Активист
Зарегистрирован: 31.05.2010
Сообщений: 157

Использование старых индексов

Здравствуйте. У меня есть таблица к примеру с такой структурой.
CREATE TABLE `tb` (
`id` MEDIUMINT UNSIGNED AUTO_INCREMENT NOT NULL, ...
PRIMARY KEY (id), ...
) ENGINE=MyISAM CHARACTER SET=utf8 AUTO_INCREMENT=1;

tb
-----------
id ...

2
4
-----------

Есть ли какая нибудь возможность создать новую запись (без явного указания индекса)
с индексом 3 а не 5. Проблема в том что таблица очень большая и постоянно меняется, добавляются новые записи и часто удаляются старые. Таким образом через пару лет  MEDIUMINT может не хватать.

Неактивен

 

#2 21.08.2010 19:06:55

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Использование старых индексов

Марк написал:

Есть ли какая нибудь возможность создать новую запись (без явного указания индекса)
с индексом 3 а не 5.

Нет.

Марк написал:

Проблема в том что таблица очень большая и постоянно меняется, добавляются новые записи и часто удаляются старые. Таким образом через пару лет  MEDIUMINT может не хватать.

Замените MEDIUMINT на INT или BIGINT
alter table `tb` modify id int not null auto_increment;

Неактивен

 

#3 21.08.2010 19:11:42

Марк
Активист
Зарегистрирован: 31.05.2010
Сообщений: 157

Re: Использование старых индексов

Спасибо. Я так и сделаю (просто хотелось уточнить). Мне не нравится то что у меня в базе менее миллиона записей и MEDIUMINT для это самый лучший вариант.

Неактивен

 

#4 21.08.2010 19:29:13

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Использование старых индексов

Использование костылей для того, чтобы обойтись MEDIUMINT, наверняка скажется на производительности гораздо хуже, чем лишний байт на хранение значения для INT.

Неактивен

 

#5 21.08.2010 19:33:34

Марк
Активист
Зарегистрирован: 31.05.2010
Сообщений: 157

Re: Использование старых индексов

Это точно. Спасибо

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson