Snowflake ID

Введение

В NocoBase Snowflake ID (Snowflake ID) используется для генерации уникальных идентификаторов.

Snowflake ID — это распространённый тип первичного ключа для поля ID по умолчанию в обычных таблицах NocoBase. Он подходит для внутренней уникальной идентификации записей.

Если нужен читаемый внешними системами номер, используйтепоследовательность или поле бизнес-номера.

Сценарии использования

Snowflake ID подходит для следующих бизнес-сценариев:

  • Первичный ключ по умолчанию в обычной таблице
  • Внутренний ID записи
  • Бизнес-таблицы, которым требуется высокопроизводительная генерация уникальных ID
  • Уникальные идентификаторы, не предназначенные для ручного распознавания

Создание и настройка

На странице «Configure fields» таблицы данных нажмите «Add field» и выберите «Snowflake ID», чтобы создать поле Snowflake ID.

20251209204217

НастройкаОписание
Field interfaceТип интерфейса поля. Для Snowflake ID соответствует snowflakeId и определяет способ ввода и отображения в интерфейсе.
Field display nameИмя поля, отображаемое в интерфейсе, например «ID», «ID записи» или «Внутренний ID». Рекомендуется использовать название, понятное бизнес-пользователям.
Field nameИдентификатор поля, используемый для внутренних ссылок в API, полях связей, правах доступа, рабочих процессах и других компонентах. После создания обычно не изменяется; допускаются только буквы, цифры и символы подчёркивания, причём имя должно начинаться с буквы.
Field typeТип поля на уровне данных. Для Snowflake ID обычно используется bigInt.
Default valueЗначение по умолчанию. При добавлении записи, если пользователь не указал значение, оно может быть подставлено автоматически.
Validation rulesОбычно генерируются системой автоматически и не требуют ручной проверки.
DescriptionОписание поля. Здесь можно указать смысл поля, требования к заполнению, источник данных или ответственного за обслуживание.
Внимание

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

Свойства поля

Поле Snowflake ID по умолчанию ведёт себя следующим образом:

СвойствоОписание
Field interface по умолчаниюsnowflakeId.
Field type по умолчаниюbigInt.
Доступный Field typebigInt.
Компонент страницыОбычно генерируется автоматически и не требует ручного ввода.
ФильтрацияПоддерживается точный поиск по ID.
СортировкаПоддерживается сортировка.
ПроверкаОбычно генерируется автоматически и обеспечивает уникальность.

Редактирование настроек

После создания нажмите «Edit» справа от поля, чтобы изменить настройки поля Snowflake ID. Редактирование поля в основном используется для настройки способа его отображения и использования в NocoBase, например для изменения отображаемого имени, описания, значения по умолчанию, правил проверки или специальных настроек поля.

Если поле получено из таблицы, синхронизированной с основной базой данных, редактирование обычно выполняется в рамках сопоставления полей — поле базы данных сопоставляется с Field type и Field interface в NocoBase.

НастройкаДоступна для редактированияОписание
Field display nameДаИзменяет имя поля, отображаемое в интерфейсе, но не изменяет идентификатор поля.
Field nameНетИдентификатор поля обычно нельзя изменить в форме редактирования после создания.
Field interfaceПри определённых условияхДля полей основной базы данных или синхронизированных полей его можно изменить при сопоставлении полей. Это повлияет на способ ввода, отображения и проверки на страницах.
Field typeПри определённых условияхДля полей основной базы данных или синхронизированных полей его можно изменить при сопоставлении полей. Перед изменением необходимо убедиться, что существующие данные можно использовать с новым типом.
Default valueДаИзменяет значение по умолчанию для новых записей.
Validation rulesДаИзменяет правила проверки поля.
DescriptionДаДополняет информацию о смысле поля, требованиях к заполнению, источнике данных или ответственном за обслуживание.
Внимание

Переключение Field type или Field interface — это не простое изменение отображаемого имени. Оно влияет на способ хранения данных, компонент ввода, правила проверки, условия фильтрации и способ использования переменных рабочих процессов. При большом объёме существующих данных сначала убедитесь, что формат данных соответствует новому типу.

Удаление поля

Нажмите «Delete» справа от поля, чтобы удалить поле Snowflake ID. В основной базе данных также можно выбрать несколько полей и удалить их одновременно.

При удалении поля Snowflake ID, созданного в основной базе данных, обычно одновременно удаляются физический столбец в базе данных и уже имеющиеся в нём данные. При удалении поля, синхронизированного из базы данных или сопоставленного с внешним источником данных, область воздействия зависит от соответствующего источника данных и происхождения поля.

Предупреждение

Удаление поля может повлиять на блоки страниц, формы, фильтры, права доступа, рабочие процессы, API, импорт и экспорт, а также существующие данные. Перед удалением убедитесь, что поле больше не используется в бизнес-конфигурациях.

Использование в настройках страниц

Поле Snowflake ID подходит для использования в качестве первичного ключа и внутреннего уникального идентификатора. 20260710145423

СценарийНазначение
Создание таблицыИспользуется в качестве поля ID по умолчанию.
Поле связиИспользуется как уникальный идентификатор связанной записи.
APIИспользуется для поиска отдельной записи.
Права доступа и рабочие процессыИспользуется как уникальный идентификатор записи во внутренних операциях.

Связанные ссылки

  • Поля — узнайте о назначении, категориях и логике сопоставления полей
  • Обычные таблицы — создание и управление полями в обычных таблицах
  • UUID — использование UUID в качестве уникального идентификатора
  • Nano ID — использование коротких ID
  • Последовательность — генерация бизнес-номеров