Определение альтернативных ключей для ссылки на строки

Альтернативные ключи обеспечивают эффективную и точную интеграцию данных с внешними системами. Это важно в случаях, когда внешняя система не хранит глобальные уникальные идентификаторы (GUID), которые уникально определяют строки в Microsoft Dataverse.

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

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

Примечание

Хотя альтернативные ключи можно определять с помощью Power Apps, использовать их можно только программным образом в коде. Дополнительные сведения о возможности программного использования альтернативных ключей см. в разделах:

Некоторые из преимуществ, обеспечиваемых альтернативными ключами:

  • Более быстрый поиск строк.
  • Более надежные массовые операции с данными.
  • Упрощенное программирование при импорте из внешних систем данных без идентификаторов строк.

Создание альтернативного ключа

Имеется два конструктора, которые можно использовать для создания альтернативных ключей:

Дизайнер Описание
портал Power Apps Обеспечивает простой оптимизированный интерфейс, но некоторые параметры недоступны.
Дополнительные сведения: Определение альтернативных ключей с помощью портала Power Apps
Обозреватель решений Не так прост, но предоставляет больше гибкости для менее распространенных требований.
Дополнительные сведения: Определение альтернативных ключей с помощью обозревателя решений

Примечание

Можно также создать альтернативный ключ в вашей среде с помощью следующих действий.

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

Нужно использовать портал Power Apps для создания альтернативных ключей, если только вам не нужно выполнить любое из следующих требований:

  • Альтернативный ключ создается в решении, отличном от решения по умолчанию Common Data Service.
  • Вам нужно легко отслеживать созданное системное задание, отслеживающее ход создания индексов поддержки.

Ограничения в создании альтернативных ключей

Имеются ограничения при создании альтернативного ключа.

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

Только эти типы столбцов можно использовать для создания альтернативных ключей:

  • Десятичное
  • Целое число (Integer)
  • Одна строка текста (String)
  • Дата и время
  • Подстановка
  • Выбранный вариант

Примечание

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

Количество ключей

Для таблицы можно определить до 10 различных ключей.

Допустимый размер ключа

При создании ключа система проверяет, может ли ключ поддерживаться платформой, в частности, не нарушает ли общий размер ключа ограничения для индекса на основе SQL, такие как 900 байт на ключ и 16 столбцов на ключ. Если размер ключа не соответствует этим ограничениям, появляется сообщение об ошибке.

Знаки юникода в значении ключа

Если данные в столбце, который используется в альтернативном ключе, содержат один из следующих символов: <,>,*,%,&,:,/,\\,#, действия обновления или исправления (PATCH) не будут работать.

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

Отслеживание состояния создания альтернативного ключа

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

Состояние выполнения системного задания определяет состояние альтернативного ключа. Ключ альтернативный может иметь следующие состояния:

  • Не завершено
  • Выполняется
  • Активно
  • Неудачно

По завершении системного задания альтернативный ключ переходит в состояние Активно и становится доступен для использования.

В случае ошибки системного задания найдите это системное задание, чтобы просмотреть все ошибки. Системное задание будет иметь имя, соответствующее следующей схеме: Create index for {0} for table {1}, где 0 — это Отображаемое имя альтернативного ключа, а 1 — это имя таблицы.

Примечание

Если требуется контролировать состояние системного задания, необходимо использовать обозреватель решений для создания индекса. Он также будет содержать ссылку на системное задание, поэтому можно отслеживать его. Дополнительные сведения: (Необязательно) Просмотр системного задания, отслеживающего создание индексов

См. также

Определение альтернативных ключей с помощью портала Power Apps
Определение альтернативных ключей с помощью обозревателя решений
Документация для разработчиков. Определение альтернативных ключей для таблицы
Документация разработчика. Использование альтернативного ключа для создания строки

Примечание

Каковы ваши предпочтения в отношении языка документации? Пройдите краткий опрос (обратите внимание, что этот опрос представлен на английском языке).

Опрос займет около семи минут. Личные данные не собираются (заявление о конфиденциальности).