Какой тип данных SQL Server я должен хранить как идентификатор сообщения электронной почты?
Я пишу функцию, которая обрабатывает входящие / исходящие электронные письма и сохраняет их. Одна из самых важных вещей, которые мне нужно хранить, это Message-Id
это в заголовке всех стандартных писем (насколько я понимаю).
Я собирался хранить весь Message-Id
в поле и индекс на нем, но, как я начал копаться в этом, кажется, что это неправильный подход. Я планирую разделить Message-Id
на @
подписать и хранить каждый кусок в MessageIdLocalPart
а также MessageIdDomain
соответственно индекс по локальной части.
Я прочитал, где максимальная длина для локальной части адреса электронной почты 64
символов, а максимум для домена 255
, Теперь эта максимальная длина указана для адресов электронной почты, и я не вижу максимальной длины в стандарте для Message-Id
, поэтому я не уверен, что применяется то же ограничение.
Я понимаю, что, как всегда, будут приходить несоответствующие электронные письма. Я просто собираюсь опустить их. Я работаю только с соответствующими электронными письмами.
Таким образом, вместо того, чтобы хранить локальную часть и доменные фрагменты как VARCHAR(MAX)
, есть ли лучший предел и / или тип данных, который я должен использовать?