3

我正在建立一个类似于 Craigslist 的网站。我想知道如何将 html 格式的文本(粗体/斜体/字体大小等)存储在 sql 2008 数据库中?

换句话说,用户将输入他们的文本,用字体大小、粗体等格式化并保存信息。将其存储在数据库中的最有效方法是什么?

4

6 回答 6

4

将其保存到 nvarchar(max) 字段。确保使用参数化查询以确保安全。阅读http://www.aspnet101.com/2007/03/parameterized-queries-in-asp-net/

于 2010-05-18T12:22:07.393 回答
3

确保只允许一定数量的 HTML 标记,否则您可能会遇到跨脚本注入。

例如,不允许您的用户输入<script><style>标记。我建议您在继续之前阅读有关跨脚本注入的更多信息!祝你好运

于 2010-05-18T15:23:31.207 回答
2

我可能只是将广告文字存储为 nvarchar(max) 数据类型

于 2010-05-18T12:21:52.490 回答
1

我想说只使用 NVARCHAR(max) 或 Text 数据类型,而不是 XML 数据类型。

这将允许轻松访问需要在沿线某处转换 xml 数据类型的内容。

于 2010-05-18T12:22:21.400 回答
1

我只是将它按原样填充到 NVARCHAR(MAX) 字段中。

当然,您将为此使用参数化查询。

于 2010-05-18T12:22:37.127 回答
0

如果您使用的是 SQL Server 2008 或更高版本,我会将其放在 nvarchar(MAX) 字段中。如果您使用的是 SQL Server 2005 或更低版本,并且字符数将低于 2000,则可以使用 nvarchar(2000) 类型。如果这限制太多,请使用文本类型。

于 2010-05-18T12:25:10.833 回答