powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Автоинкрементное поле - как обнулить?
8 сообщений из 8, страница 1 из 1
Автоинкрементное поле - как обнулить?
    #36541656
tria
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пока нашел только один вариант - создать/удалить таблицы. Других вариантов нет?
...
Рейтинг: 0 / 0
Автоинкрементное поле - как обнулить?
    #36542381
Пеппи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
создать и удалить поле таблицы. Правда смотря каким средством пользуешься кстати.
попробуй SQLite Database Browser 2.0 b1
...
Рейтинг: 0 / 0
Автоинкрементное поле - как обнулить?
    #36542391
tria
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Меня интересует только программный способ - мне необходимо обнулять по кнопке на форме.
...
Рейтинг: 0 / 0
Автоинкрементное поле - как обнулить?
    #36542468
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
Обнулить автоинкрементное поле для более чем одной записи таблицы нельзя, т.к. есть ограничение на уникальность. Если же нужно изменить значение счетчика, чтобы отсчет снова пошел с 1, то это можно сделать, просто установив счетчик в 0.
...
Рейтинг: 0 / 0
Автоинкрементное поле - как обнулить?
    #36544032
tria
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Периодически все данные из таблицы выгружаются, все строки в таблице удаляются. В этот момент я и хочу по желанию пользователя обнулить поле.

А что такое "счетчик" и как можно "установить счетчик в 0"?
...
Рейтинг: 0 / 0
Автоинкрементное поле - как обнулить?
    #36544579
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
triaПериодически все данные из таблицы выгружаются, все строки в таблице удаляются. В этот момент я и хочу по желанию пользователя обнулить поле.

Поле - это свойство записи, т.е. ячейка в таблице. Если записи удалены, то полей вовсе нет.

triaА что такое "счетчик" и как можно "установить счетчик в 0"?

Счетчик - это текущее значение автоинкрементного поля. Хранится в таблице sqlite_sequence.
...
Рейтинг: 0 / 0
Автоинкрементное поле - как обнулить?
    #36545265
tria
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо.
Сработало:
Код: plaintext
1.
2.
3.
update sqlite_sequence set
seq= 0 
WHERE Name='DocsHead'
где 'DocsHead' - имя таблицы с автоинкрементным полем.

Особенность: если в таблице есть записи, то поле устанавливается в 0, но при добавлении записи добавляется не с 1, а с max+1. Защита от дурака работает :)
...
Рейтинг: 0 / 0
Автоинкрементное поле - как обнулить?
    #36545370
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
triaСпасибо.
Сработало:
Код: plaintext
1.
2.
3.
update sqlite_sequence set
seq= 0 
WHERE Name='DocsHead'
где 'DocsHead' - имя таблицы с автоинкрементным полем.

Особенность: если в таблице есть записи, то поле устанавливается в 0, но при добавлении записи добавляется не с 1, а с max+1. Защита от дурака работает :)

А еще должно переполнение 64-бит integer отслеживаться.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Автоинкрементное поле - как обнулить?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]