Я новичок в доступе к Microsoft. Мне просто интересно, как я могу создать собственный первичный ключ? например abc-123 формат?Пользовательский первичный ключ для MS Access
ответ
Это зависит от того, как вы хотите создавать значения abc-123
.
Если вы хотите создать их самостоятельно в своем коде, просто создайте столбец Text
и используйте его в качестве основного ключа.
Если вы хотите Доступ для создания этих значений ... это на самом деле невозможно. Единственное, что Access может автоматически генерировать, - увеличить числовые значения (тип данных AutoNumber
).
Так что лучше всего использовать AutoNumber
как основной первичный ключ и создать значение abc-123
из этого только для отображения.
Вот некоторые примеры, как это сделать, из предыдущих аналогичных вопросов, которые я ответил в прошлом:
Отказ от ответственности: Я не» t знать, будет ли подобный подход работать в вашем случае.
Если нет, то вам нужно дать больше информации, как именно вы хотите, чтобы ваши номера должны быть созданы:
- вы хотите, чтобы увеличить число?
- Вы хотите, чтобы буквы менялись/«увеличивались»/всегда оставались неизменными?
На самом деле, вы можете создать триггер таблицы, если используете 2010 или позже. Триггер таблицы может занимать некоторое поле (где вы получаете abc), а затем какое-то другое поле (seq num), а затем добавляете + 1 к значению.
код «воздух» будет выглядеть следующим образом:
Прелесть триггера таблицы он работает на столе (двигатель данных) уровень, и, таким образом, если открыть базу данных с ODBC, VB.net, FoxPro, Access и т. Д., Тогда ключ ПК всегда будет автоматически генерироваться для вас.
Спасибо, Альберт. Я попытался что-то подобное с «DMax()», и он работал, когда запись была вставлена из самого Access, но это вызвало отказ INSERT от других приложений. («DMax не разрешен в макросе данных».) Я пытался использовать варианты выше в Access 2010, но если мой LookUpRecord пытается выполнить SELECT в той же таблице, к которой принадлежит Data Macro, я получаю «The», Действие макроса LookUpRecord имеет недопустимое значение для аргумента «Look Up A Record In». (Кажется, что SELECT из другой таблицы в порядке.) Не могли бы вы обновить свой ответ, чтобы предоставить рабочий пример? Благодаря! –
Приведенный выше пример является рабочим примером (он пропускает код, если префикс никогда не существовал в базе данных).Если вы посмотрите в верхнем левом углу экрана, выберите «custpart» перед изменением заголовка окна. Таким образом, опубликованный код представляет собой процедуру хранения, выполняемую в таблице SAME, как код обновления. Важная часть - когда вы ссылаетесь на имя поля, ссылаетесь ли вы на текущую таблицу в результате триггера или на запрос? В результате обратите внимание, как я использовал псевдоним, чтобы отличить две таблицы. –
Вы случайно создали свой пример в Access 2013? Я просто повторил то же самое в Access 2010 и получил ту же ошибку, которую я привел в своем предыдущем комментарии, когда попытался сохранить макрос Before Change. (См. Снимок экрана [здесь] (http://i.stack.imgur.com/jIqwf.png).) Я замечаю, что макет редактора макросов на скриншоте немного отличается от моего, поэтому мне интересно, возможно ли ваш подход является результатом усовершенствования, введенного в Access 2013. –
- 1. MS Access Первичный ключ AutoNumber запутался
- 2. не удалось добавить первичный ключ в таблицу MS Access
- 3. Пользовательский UUID как первичный ключ
- 4. Пользовательский уровень MS Access 2010
- 5. Создать внешний ключ в MS Access VBA
- 6. Первичный ключ базы данных Microsoft Access
- 7. MS Access: индекс оптимизации
- 8. базы данных MS Access
- 9. Получить первичный ключ новой записи
- 10. varchar() первичный ключ или int первичный ключ?
- 11. MS Access повторение данных
- 12. Составной первичный ключ против автоинкрементируемого Первичный ключ
- 13. MS Access Software Отслеживание Лист
- 14. Идентификатор и первичный ключ
- 15. как подавить сообщение об ошибке «Дублировать первичный ключ» в Access
- 16. Sqoop импорт: Составной первичный ключ и текстуальное первичный ключ
- 17. Пользовательский первичный ключ ActiveAndroid для создания и обновления записи
- 18. Первичный ключ конфликта
- 19. MS Access Родительские/детские отношения
- 20. MS Access - создание двух столбцов с дублирующимся вводом как один уникальный составной первичный ключ
- 21. База данных с использованием MS Access
- 22. Неизвестный первичный ключ для таблицы
- 23. целочисленный первичный ключ для репликации
- 24. jdbc INSERT в таблицу MS Access, чей первичный ключ является autonumber
- 25. Могу ли я указать первичный ключ при связывании представления Oracle с MS Access?
- 26. MS Access Null Reference при импорте таблицы
- 27. запроса для MS Access
- 28. GUID Первичный ключ не создается
- 29. Копирование Первичный ключ в другое поле в Access
- 30. первичный ключ и внешний ключ
Как вы на самом деле хотите, чтобы часть 'abc' отображалась в разных кортежах. Некоторая проверка, я думаю, может помочь. –