Ставишь UNIQUE на поле с номером.
При сохранении тебе база ругнется, если попытаешься вставить уже существующий. Только останется понять что за ругань идет и вывести человеческое сообщение. Для начала просто выводи то, что выдает тебе база, там посмотришь как можно определить. Обычно в этом случае появляется сообщение типа Violation unique contraint bla-bla-bla... (bla-bla-bla - имя ограничения).
Т.е. для начала одлжно выглядеть так:
Код:
Try
ADOQuery1.Post;
Except
On E : Exception Do
Begin
ShowMessage('Ошибка: ' +E.Message);
// Add additional code here...
End;
End;