Delphi - Delphi7, Access

Ответить
Аватара пользователя
mahsus

Delphi - Delphi7, Access

Сообщение mahsus »

Привет, народ!

У меня такой вопрос по базе данных Access. Есть поле 'Key' (autoincrement). Так вот она часто очищается и записывается снова и каждый раз при добавлении новых записей поле 'Key' начинает заполнение не с "1", а с того числа, на котором закончила заполнение. Как чистить ключевое поле 'Key'?
Аватара пользователя
mahsus

Re: Delphi - Delphi7, Access

Сообщение mahsus »

Вот, что сказано в справке по Microsoft Access:


Цитата:



Выбор типа поля счетчика

Для создания полей, в которые при добавлении записи автоматически вводится число, в Microsoft Access существует тип данных счетчика. Созданный для записи номер уже не может быть удален или изменен. Поле счетчика может генерировать три типа чисел: последовательно возрастающие на единицу, случайные числа, а также коды репликации (также называемые GUID — глобальные уникальные идентификаторы). Наиболее часто используется счетчик последовательно возрастающих чисел. Такой тип счетчика удобно использовать как первичный ключ таблицы.



Из чего складывается впечатление, что это невозможно.

Изображение
Аватара пользователя
mahsus

Re: Delphi - Delphi7, Access

Сообщение mahsus »

Дополнение от автора:

Мне и не нужно удалять записи с генерированным значением поля ключа. Когда я очищаю таблицу, при вводе первой записи нужно, чтобы поле 'key' начинало отсчет с "1", иначе, в конечном итоге после n-й очистки базы это поле переполнится и даст эррор. Так что же делать?



Добавлено:



Решение проблемы от автора:

Для сброса счетчика автоинкремента при удалении всех записей таблицы вместо DELETE надо использовать ф-цию TRUNCATE
Ответить

Вернуться в «Программирование и базы данных»