Получение следующего доступного AutoNumber - PullRequest
2 голосов
/ 04 марта 2012

Я занят школьным проектом, где я запрашиваю базу данных на основе сервера от клиента.Одним из требований является получение следующего доступного AutoNumber из базы данных.

Каким будет запрос SQL для получения следующего доступного Autonumber?Возможно ли это сделать?

Ответы [ 4 ]

2 голосов
/ 05 марта 2012

Следующий автономный номер отличается от последнего автономного номера +1.Если записи были удалены, следующий возможный автономный номер может быть значительно выше, чем последний номер.Также возможно получить отрицательные автономные номера с MS Access.Как показывает Аллен Браун , вы можете использовать ADOX, чтобы получить свойство seed столбца autonumber, который является следующим номером autonumber.

1 голос
/ 05 марта 2012

Лучшее решение - вставить запись, затем получить сгенерированные ключи и откатить транзакцию. Работает на всех базах данных с поддержкой транзакций и автоматических номеров.

1 голос
/ 04 марта 2012

Зависит от вкуса СУРБД.MariaDB (MySQL) имеет функцию LAST_INSERT_ID (), которая дает вам последнее значение поля AUTO_INCREMENT.

Базы данных, которые поддерживают последовательности (скажем Ingres), позволяют вам получить следующее значение с чем-то вроде:

SELECT NEXT VALUE FOR some_sequence;

или

SELECT some_sequence.NEXTVAL;
1 голос
/ 04 марта 2012

Если это Oracle, тогда выполните приведенный ниже запрос, используя JDBC

SELECT YOUR_SEQUENCE.NEXTVAL FROM DUAL
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...