Php 什么';s是存储密件抄送邮件的最佳mysql数据类型字段

Php 什么';s是存储密件抄送邮件的最佳mysql数据类型字段,php,mysql,email,Php,Mysql,Email,我有一个发送大量电子邮件的脚本,我想知道哪种数据类型是在我的数据库中存储这些密件抄送电子邮件的最佳数据类型 每次我发送电子邮件时,我都会将此电子邮件存储在数据库中以备将来记录。目前,我使用的方法是每封邮件1行,但由于我现在的批量电子邮件系统,我只需要存储一个记录与许多密件抄送电子邮件 只使用一个VARCHAR字段可以吗 PD:该字段通常可以存储大约50封电子邮件 提前谢谢 编辑: 我当前保存了电子邮件内容,因此我只想知道此字段的数据类型,因为我不确定VARCHAR 255是否足够理想。VARCH

我有一个发送大量电子邮件的脚本,我想知道哪种数据类型是在我的数据库中存储这些密件抄送电子邮件的最佳数据类型

每次我发送电子邮件时,我都会将此电子邮件存储在数据库中以备将来记录。目前,我使用的方法是每封邮件1行,但由于我现在的批量电子邮件系统,我只需要存储一个记录与许多密件抄送电子邮件

只使用一个VARCHAR字段可以吗

PD:该字段通常可以存储大约50封电子邮件

提前谢谢

编辑:

我当前保存了电子邮件内容,因此我只想知道此字段的数据类型,因为我不确定VARCHAR 255是否足够理想。

VARCHAR(255)


在任何企业web应用程序中都是标准的

我不会使用这种方法

首先,varchar的最大长度是255,因此如果您计划存储50个邮件地址,那么它可能只有5个字符长,这是不够的

您可以使用文本,但无论如何,在同一字段中存储多个地址不是一个好方法。您应该为每个地址使用一行,并使用sendId或类似的东西将它们关联起来

如果存储邮件的其他信息,如内容等,则可以使用第二个表,其中只包含电子邮件和主表中包含所有其余信息的行的id


通过这种方式,您可以更好地处理一切,您可以计算收件人的数量、筛选、排序、搜索、避免重复、检索不同的电子邮件发送到新闻,并以更方便的方式管理记录根据我们的编辑,您只想保存邮件内容。VARCHAR 255被限制为255个字符,因此如果一封邮件超过此长度(我假设很多邮件都会超过此长度),255位置后的字符将丢失。
最好使用限制为65.535个字符的文本(请参阅),这样就不会剪切任何文本


如果您可以预见您的邮件也将超过65.535个字符的限制(但这对于邮件来说太多了),您可以查看MEDIUMTEXT(16.777.215个字符)甚至LONGTEXT(4.294.967.295个字符)。

根据您的要求,您可以将数据类型分配为
varchar(32765)
。根据,您的列
不应为NULL


要存储电子邮件内容,请选择
mediumtext
数据类型。

考虑电子邮件。

如果您的系统强制您对数据进行非标准化,则表明数据有问题。是否要存储邮件内容?还是主题+内容?还是收件人?还是全部?邮件发送的时间呢?我刚刚编辑了这篇文章。非常感谢。