|
|
|
auto_increment
|
|||
|---|---|---|---|
|
#18+
Так вот меня интересует как заполнить свой пробел в таблице код выглядит вот так вот самого начала и поэтапно.... CREATE TABLE `test`( `id` INT AUTO_INCREMENT PRIMARY KEY, `name` VARCHAR(20) NOT NULL ); Потом я ее заполняю например до 10 строк... так вот после заполнения я например удалю 5 строку, и после заполнения новой одной строки она заполнит как под номер id-11, а ту 5ю строку проигнорит. Я понимаю что команда AUTO_INCREMENT делает к id +1 к числу . Эту проблемку для себя я решил как бы таким способом.... INSERT INTO `test` (id , name) VALUES (5 , "имя"); таким образом я заполняю этот пробел НО..., ну так а если у меня 1000 пользователей в базе а то и 10 000 я же не буду искать пробелы. Ну так вот , как сделать так чтоб при заполнение новой строки чтоб он автоматом заполнил сперва места удаленых а после заполнения этих строк уже бы перешел на AUTO_INCREMENT +1 как обычно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2019, 22:38 |
|
||
|
auto_increment
|
|||
|---|---|---|---|
|
#18+
Описанное выше - абы заполнение дыр - делать нельзя категорически! id - это уникальный индекс. Уникальное значение, однозначно идентифицирующее запись. (а вот теперь читай очень внимательно) Идентифицирующее запись в течение всего срока жизни таблицы . Усвоил? таблицы! не записи! то есть запись уже давно удалена, но это значение, которое у неё имело поле id, продолжает указывать на эту несуществующую запись. И поэтому это значение не может быть присвоено этому полю другой записи. Хочешь иметь непрерывную нумерацию? заведи под это дело ещё одно поле, но обычное, а не входящее в первичный индекс, ну и заполняй так, чтобы получить желаемое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2019, 23:24 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39895970&tid=1828841]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
40ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 357ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...