Kwert-soft.ru

IT Софт для ПК
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как сбросить счетчик в access

Как сбросить счетчик в access

Есть база!
Есть много таблиц!
В некоторых таблицах есть поля «Счетчики»!
По ходу разработки базы было много экспериментов!
Счетчики выросли до ужасных значений!
эти поля не знаю как сбросить на 0 или на 55 например.
База состоит из множества запросов связей и т д..
Но все связи не коснутся счетчиков.

От: rameelhttps://github.com/rsdn/CodeJam
Дата:02.01.09 08:37
Оценка:

Здравствуйте, Max1983, Вы писали:

Управление -> Сжать и восстановить базу данных.

От: Max1983http://koksa.net
Дата:04.01.09 13:34
Оценка:

Здравствуйте, rameel, Вы писали:

R>Здравствуйте, Max1983, Вы писали:

R>Управление -> Сжать и восстановить базу данных.

Access 2007 ?
Не нашол!

От: Ромашка
Дата:05.01.09 09:26
Оценка:

Max1983 пишет:
> R>Управление -> Сжать и восстановить базу данных.
> Access 2007 ?
> Не нашол!

На круглую кнопочку вверху нажимал? Шестая сверху менюшка это
«Управление».

Всё, что нас не убивает, ещё горько об этом пожалеет.

От: Max1983http://koksa.net
Дата:05.01.09 21:19
Оценка:

Здравствуйте, Ромашка, Вы писали:

Р>Max1983 пишет:
>> R>Управление -> Сжать и восстановить базу данных.
>> Access 2007 ?
>> Не нашол!

Р>На круглую кнопочку вверху нажимал? Шестая сверху менюшка это
Р>»Управление».

Р>Второй вариант:

Р>

Хорош смеяться над бедным ламером!
Ну и спасибо )

Сброс значения поля счетчика в Access

Исходный номер статьи базы знаний: 812718

Сводка

В этой статье приведены пошаговые инструкции по сбросу значения поля счетчика в Access. Значение поля счетчика в Access не сбрасывается автоматически при удалении нескольких строк или всех строк в таблице. Чтобы сбросить значение поля счетчика и обновить значение счетчика в указанной таблице, необходимо вручную выполнить некоторые задачи.

Перед выполнением указанных ниже действий необходимо создать резервную копию базы данных.

Сброс поля счетчика в одной таблице

Если таблица не имеет связей с другими таблицами, используйте метод 1 или 2 для сброса значения поля счетчика.

Способ 1: перемещение данных в новую таблицу с помощью запроса на создание таблицы

Можно сбросить значение поля счетчика с помощью запроса на создание таблицы, чтобы создать таблицу с теми же данными, а затем добавить новое поле счетчика.

Доступ к 2003 и более ранним версиям

Чтобы сделать это в Access 2003 или более ранней версии, выполните указанные ниже действия.

  1. Удалите поле Счетчик из основной таблицы и обратите внимание на имя поля счетчика .
  2. Щелкните запросы в левой области, а затем дважды щелкните Создание запроса в представлении конструктора на правой панели.
  3. В диалоговом окне Добавление таблицы выберите основную таблицу, нажмите кнопку Добавить, а затем нажмите кнопку Закрыть.
  4. Дважды щелкните обязательные поля в табличном представлении главной таблицы, чтобы выбрать поля.
  5. Выберите требуемый порядок сортировки .
  6. В меню запрос выберите запрос на создание таблицы, введите имя новой таблицы в текстовом поле имя таблицы , а затем нажмите кнопку ОК.
  7. В меню запрос выберите команду выполнить.
  8. При появлении сообщения «вы хотите вставить # строки в новую таблицу» нажмите кнопку Да , чтобы вставить строки.
  9. В меню файл выберите пункт Закрыть, а затем нажмите кнопку нет , чтобы закрыть окно запроса на создание таблицы .
  10. В левой области щелкните таблицы , щелкните правой кнопкой мыши новую таблицу и выберите команду конструктор.
  11. В представлении конструктора для таблицы добавьте поле счетчика с тем же именем поля, которое вы удалили на шаге 1, добавьте это поле счетчика в новую таблицу и сохраните таблицу.
  12. Закройте окно «представление конструктора «.
  13. Переименование основной таблицы и переименование новой таблицы в качестве имени основной таблицы.

Access 2007 и более поздние версии

Чтобы сделать это в Microsoft Office Access 2007 или более поздней версии, выполните указанные ниже действия.

  1. Удалите поле Счетчик из основной таблицы и обратите внимание на имя поля счетчика .
  2. Перейдите на вкладку создать , а затем щелкните элемент конструктор запросов в другой группе.
  3. В диалоговом окне Добавление таблицы выберите основную таблицу. Нажмите Добавить, а затем Закрыть.
  4. Дважды щелкните обязательные поля в табличном представлении главной таблицы, чтобы выбрать поля.
  5. Выберите требуемый порядок сортировки .
  6. На вкладке конструктор нажмите кнопку создать таблицу в группе тип запроса .
  7. Введите имя новой таблицы в поле имя таблицы и нажмите кнопку ОК.
  8. На вкладке конструктор выберите команду выполнить в группе результаты .
  9. При появлении сообщения «вы хотите вставить # строки в новую таблицу» нажмите кнопку Да , чтобы вставить строки.
  10. Закройте запрос.
  11. Щелкните правой кнопкой мыши новую таблицу и выберите команду представление конструктора.
  12. В представлении конструктора для таблицы добавьте поле счетчика с тем же именем поля, которое вы удалили на шаге 1. Добавьте это поле счетчика в новую таблицу и сохраните таблицу.
  13. Закройте окно «представление конструктора».
  14. Переименование основной таблицы и переименование новой таблицы в качестве имени основной таблицы.
Читать еще:  Практические работы в access

Способ 2: создание новой таблицы и перемещение в нее данных с помощью запроса на добавление

Вы можете скопировать структуру существующей таблицы в виде новой таблицы. Затем можно добавить данные в новую таблицу и добавить новое поле счетчика.

Доступ к 2003 и более ранним версиям

Для этого в Microsoft Office Access 2003 и более ранних версиях выполните указанные ниже действия.

Удаление поля счетчика из основной таблицы.

Запишите имя поля счетчика .

Скопируйте структуру основной таблицы, а затем создайте новую таблицу.

Щелкните запросы на левой панели. Щелкните создать запрос в представлении конструктора на правой панели.

В диалоговом окне Добавление таблицы выберите основную таблицу. Нажмите кнопку Добавить , а затем кнопку Закрыть.

Чтобы выбрать поля, дважды щелкните обязательные поля. Сделайте это для всех полей, кроме поля счетчика в представлении таблицы основной таблицы.

В меню запрос выберите команду Добавить запрос.

Это изменит тип запроса.

В списке имя таблицы выберите новую таблицу, созданную в шаге 2. Нажмите кнопку ОК.

В меню запрос выберите команду выполнить.

При появлении сообщения «вы хотите вставить # строки в новую таблицу» нажмите кнопку Да , чтобы вставить строки.

В меню файл выберите команду Закрыть. Нажмите кнопку нет , чтобы закрыть окно аппендкуери .

Нажмите кнопку таблицы на левой панели. Щелкните правой кнопкой мыши новую таблицу и выберите команду конструктор.

В представлении конструктора для таблицы добавьте поле счетчика с тем же именем поля, которое вы удалили на шаге 1. Добавьте это поле счетчика в новую таблицу и сохраните таблицу.

Закройте окно «представление конструктора «.

Переименование основной таблицы и переименование новой таблицы в качестве имени основной таблицы.

Access 2007 и более поздние версии

Чтобы сделать это в Microsoft Office Access 2007 или более поздней версии, выполните указанные ниже действия.

Удаление поля счетчика из основной таблицы.

Запишите имя поля счетчика .

Скопируйте структуру основной таблицы, а затем создайте новую таблицу.

Перейдите на вкладку создать , а затем щелкните элемент конструктор запросов в другой группе.

В диалоговом окне Добавление таблицы выберите основную таблицу. Нажмите Добавить, а затем Закрыть.

Чтобы выбрать поля, дважды щелкните обязательные поля. Сделайте это для всех полей, кроме поля счетчика в представлении таблицы основной таблицы.

На вкладке конструктор нажмите кнопку Добавить в группе тип запроса .

Это изменит тип запроса.

I в списке имя таблицы выберите новую таблицу, созданную на шаге 2, и нажмите кнопку ОК.

На вкладке конструктор выберите команду выполнить в группе результаты .

При появлении сообщения «вы хотите вставить # строки в новую таблицу» нажмите кнопку Да , чтобы вставить строки.

Щелкните правой кнопкой мыши новую таблицу и выберите команду представление конструктора.

В представлении конструктора для таблицы добавьте поле счетчика с тем же именем поля, которое вы удалили на шаге 1. Добавьте это поле счетчика в новую таблицу и сохраните таблицу.

Закройте окно «представление конструктора».

Переименование основной таблицы и переименование новой таблицы в качестве имени основной таблицы.

Сброс поля счетчика в таблице со связанными таблицами

Таблица с таблицами, на которые указывают ссылки, имеет связь с одной или несколькими таблицами. В приведенных ниже шагах описывается Сброс поля счетчика для таблицы, содержащей одну указанную таблицу. Если имеется несколько указанных таблиц, необходимо выполнить указанные ниже действия для каждой указанной таблицы.

Читать еще:  Практические работы access 2020

Удаление связи между таблицами.

Присвойте полю счетчик основной таблице тип данных Number, а затем удалите первичный ключ.

Создайте новое поле с типом данных счетчика в главной таблице и сохраните таблицу.

Создайте новое поле с числовым типом данных в указанной таблице и сохраните таблицу.

Чтобы создать запрос на обновление, который обновляет новое поле в указанной таблице, с помощью нового поля счетчика основной таблицы, выполните указанные ниже действия.

Доступ к 2003 и более ранним версиям

    Щелкните запросы в левой области, а затем щелкните создать запрос в представлении конструктора в правой панели.

При этом создается новый запрос.

При этом создается объединение между таблицами, основанными на исходных связываемых полях.

Access 2007 и более поздние версии

  1. Перейдите на вкладку создать , а затем щелкните элемент конструктор запросов в другой группе. При этом будет создан новый запрос.
  2. В диалоговом окне Добавление таблицы выберите основную таблицу и указанную таблицу. Нажмите кнопку Добавить , чтобы добавить основную таблицу и указанную таблицу. Нажмите кнопку Закрыть.
  3. Щелкните поле в основной таблице, которое ранее ссылалось на указанную таблицу, а затем перетащите поле в ранее связанное поле указанной таблицы.

При этом создается объединение между таблицами, основанными на исходных связываемых полях.

Это изменит тип запроса.

Удалите исходное связываемое поле из основной таблицы и указанной таблицы.

Вернуть имя нового поля счетчика к исходному имени.

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

Обнуление счетчика без пересоздания таблицы

26.05.2011, 20:31

Сделать, что бы при обновлении таблицы изменились значения без пересоздания формы
Обновил таблицу а в форме не поменялось как сделать что бы поменялось что бы не пересоздавать форму

Обнуление счетчика
Подскажите, плиз чайнику, можно ли обнулить счетчик? Если запись испорчена, можно ли возобновить.

Создание таблицы запросом + поле счетчика
Здравствуйте, Уважаемые форумчане! Задача: сделать некую ленточную форму, источником данных.

Программно связать таблицы один-к-одному (обнуление поля типа счетчик)
Здравствуйте. Стоит задача программно по кнопке обнулять поле типа «счетчик». Сбрасывание.

27.05.2011, 08:002

в принципе это нормально, так и бывает в правильно созданной базе, потому что счетчик должен служить для идентификации записей в таблице и не используется для подсчета записей. Но если так уж необходимо обнулить, то можно использовать такие запросы:

1. Удалить поле счетчик:

27.05.2011, 08:33327.05.2011, 09:16427.05.2011, 09:23527.05.2011, 10:34627.05.2011, 13:23728.05.2011, 02:26 [ТС]8

всем спасибо.
Уже сам разобрался
если кому интересно то вот нашел хороший способ:

В Microsoft Office Access 2003 или более ранних версиях выполните следующие действия.
Удалите поле Счетчик из основной таблицы.

Запомните имя поля Счетчик.
Щелкните Запросы на левой панели. Дважды щелкните Создание запроса в режиме конструктора на правой панели.
В диалоговом окне Добавление таблицы выберите основную таблицу. Нажмите кнопку Добавить, а затем — Закрыть.
Дважды щелкните нужные поля в основной таблице в режиме таблицы, чтобы выбрать эти поля.
Выберите нужный порядок Сортировка.
В меню Запрос выберите команду Запрос на создание таблицы. В поле Имя таблицы введите имя новой таблицы и нажмите кнопку OK.
В меню Запрос выберите команду Выполнить.
Появится диалоговое окно со следующим текстом: Будет добавлено следующее число записей #. Нажмите кнопку Да, чтобы добавить записи в новую таблицу.
В меню Файл выберите команду Закрыть. Нажмите кнопку Нет, чтобы закрыть окно Запрос на создание таблицы.
Выберите Таблицы на левой панели. Щелкните новую таблицу правой кнопкой мыши и выберите Конструктор.
В режиме Конструктор добавьте поле Счетчик и присвойте ему название поля, удаленного на шаге 1. Добавьте это поле Счетчик в новую таблицу и сохраните изменения.
Закройте окно режима Конструктор.
Измените название основной таблицы. Дайте новой таблице название основной.

Как «заставить» счетчик начинать нумеровать с произвольного номера и с произвольным инкрементом

Иногда необходимо изменить начальный номер счетчика с которого начинается автоматический отсчет. Просто так в Access это сделать не удастся.

Для того, чтобы добиться этой цели, необходимо добавить в таблицу запись с нужным значением счетчика.

Редактировать поле «счетчик» можно разными путями — либо запросом на добавление, либо из кода VBA с помощью объекта Recordset.

Пример с использованием временной таблицы и запроса:

Допустим, у Вас есть таблица Table1, которая содержит поле счетчика ID, которое вы желаете стартовать с другого номера. Не вводите пока никаких записей в таблицу. Создайте, другую временную таблицу с одним полем типа Длинное целое, которое имеете тоже имя (в нашем случае ID), что и поле счетчика в первой таблице. Создайте запись во временной таблице, введя номер на единицу меньше того, с какого вы желаете стартовать счетчик в таблице Table1. Создайте запрос на добавление, чтобы добавить одну запись из второй таблицы в первую таблицу, и запустите его. Удалите вторую временную таблицу, удалите запись, которая появилась в таблице Table1 и начинайте вводить данные.

Пример с использованием запроса:

‘Есть таблица «Table1» с полем «ID» типа «счетчик»

PARAMETERS [Number] Long;

INSERT INTO Table1( [ID] )

Select [Number] As Expr1;

Создаете новый запрос, добавляете таблицу, выбираете режим SQL, вставляете эти строки и сохраняете запрос.

После выполнения запроса введите желаемое число и поле счетчик в таблице будет нумеровать именно с этого номера.

Пример с использованием VBA:

‘Есть таблица «Table1» с полем «ID» типа «счетчик»

Public Function AddNumer(lNum As Long) As Long

On Error GoTo Err_

Dim rs As Recordset

Set rs = CurrentDb.OpenRecordset(«Table1»)

Учтите только, что если Вы введете число меньше, чем значение счетчика в данный момент, запись добавится, но нумерация все равно будет идти по принципу: максимальное число + 1. Например, у Вас значение счетчика было 333, Вы добавляете запись со значением 222 — запись, конечно, добавится, но все равно счетчик будет продолжать нумеровать 334, 335, 336. т.е. максимальное значение в данном поле + 1.

После удаления всех записей из таблицы, поле счетчик не сбрасывается на единицу, а продолжает последовательно нумеровать и дальше. Поэтому необходимо после очистки таблицы сжать (compact) базу данных. Если из таблицы удалить не все записи, то после сжатия значение поля autonumber при добавлении будет равно максимальному — тому, что уже есть в таблице +1 (Если, конечно, свойство поля счетчик «New Values» установлено в «Increment»). Другой путь сбросить на единицу — удалить поле счетчика и создать его снова в таблице.

Можно использовать мощные инструкции SQL:

‘Есть таблица «Table1» с полем «ID» типа «счетчик»

ALTER TABLE Table1 ALTER COLUMN ID Counter(1,1)

Создаете новый запрос, добавляете таблицу, выбираете режим SQL, вставляете эти строки и сохраняете запрос.

Можно сказать, что это малодокументированная команда 😉 с широкими возможностями управления полем типа счетчик.

Команда позволяет задавать для таблицы начальный отсчет ( 1 ,1) и инкремент (1, 1 ). Можно задавать, например, начальный отсчет с 1000 с инкрементом в 10 . Counter(1000,10), причем никаких ограничений не накладывается — можно задавать значение меньшее, чем максимально присутствующее в этом поле, в отличие от примера с использованием запроса. Никаких процедур по сжатию базы для сброса счетчика не требуется. Понятно, что если будет пересечение, т.е. добавляемое значение счетчика уже присутствует в таблице, то механизм индексирования не даст ввести дублирующее значение и вывесит предупреждающее сообщение. Также нельзя таким способом изменить значение счетчика, если поле счетчика (в данному случае ID) участвует в одной или нескольких связях. С другой стороны, что стоит удалить связь, выполнить запрос на изменение счетчика и заново создать связь.

Ссылка на основную публикацию
Adblock
detector