JavaDB: Можно ли изменить автоматическое приращение смещения на существующей таблице?

голоса
1

Можно ли изменить автоинкрементируемое смещение на уже существующую таблицу с JavaDB?

У меня проблема, где вставка новых записей обычно (но не всегда) завершается с ошибкой жалуясь об использовании существующего ключа (мой автоинкрементным столбец). Для того, чтобы заполнить эту базу данных, я взял дамп из другой базы данных (MySQL) и использовать хранимую процедуру JavaDB, чтобы вставить их все в соответствующей JavaDB таблицу. Моя теория состоит в том, что вставка этих записей копировали существующие идентификаторы из таблицы MySQL. Теперь функциональность автоприращение Dishing из существующих идентификаторов. Я фигурное явно устанавливая смещение на некоторое большое число позволит автоприращение работать снова.

Задан 09/12/2008 в 22:47
источник пользователем
На других языках...                            


2 ответов

голоса
1

Даже если это не является прямым ответом на вопрос: С MySQL, вы можете сделать

ALTER TABLE my_little_table AUTO_INCREMENT =2000

установить значение автоматического приращения.

Ответил 19/11/2010 в 14:18
источник пользователем

голоса
0

Я не знаю, как непосредственно изменить смещение, но мне удалось исправить это:

  1. Изменение количества приращения по X (1 миллион в моем случае).
  2. Установка фиктивной записи.
  3. Уменьшение количества приращения обратно до 1.
  4. Удаление фиктивной записи.

Я использовал этот SQL заявление, чтобы изменить величину приращения:

ALTER TABLE tbl ALTER COLUMN col SET INCREMENT BY x
Ответил 09/12/2008 в 23:42
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more