我决定是否应该在SQL数据库中使用NVarchar浪费空间。如果电子邮件标题不支持所有字符,那么我将只存储为Varchar。
答案 0 :(得分:2)
是的,他们可以通过相关RFC中提到的几种不同的编码机制。
答案 1 :(得分:2)
今天,原始格式的标题不包含除US-ASCII字符以外的任何内容。当然,可以将(几乎)任何Unicode字符输入到某些标题中,例如主题,命名From,To等的一部分,但这些是使用特殊形式的Base64或Quoted-Printable编码编码的。因此,您的问题的答案取决于您的系统用于存储标题的格式:
1.原始格式:适用于调试,标题的精确复制等,它只包含US-ASCII,但不可读
2.解码格式:可读,但它几乎可以包含任何Unicode字符。
另一方面,已经有experimental RFC定义了真正的UTF-8标头,所以上述所有内容都可能在几年内发生变化。