Схема БД для почтового клиента - PullRequest
0 голосов
/ 17 февраля 2012

Я начинаю работу над системой обработки почты, и хотя поля достаточно ясны, я не уверен, какую длину определить для таких полей, как адрес электронной почты, тема и т. Д. И т. Д.

конечно, они могут бытьсделал ntext на сервере sql, но тогда вы потеряете некоторые возможности быстрого поиска

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

также, есть ли поля заголовка, которые можно использовать дляпотоковые разговоры как в gmail и т. д.?

1 Ответ

0 голосов
/ 17 февраля 2012

Это действительно зависит от вашего приложения, но я могу начать разговор:

messageId    Int
emailAddress varchar(max)  [translates to varchar(8000)]
subject      varchar(1000) [I think this is the max]
body         varchar(max)  [translates to varchar(8000)]
dateSent     datetime

Что касается разговоров, я не делал этого раньше, но вы могли бы просто сделать это в Microsoft Outlook ленивым способом и просто сгруппировать их по отправителю и теме. Если вам нужны какие-то настоящие родительские и дочерние отношения, вы могли бы попытаться встроить их в свои объекты .Net, прочитав информацию заголовка письма и придя с какой-нибудь бизнес-логикой, используя IP-адреса или что-то в этом роде?

...