【问题标题】:suitable data type to save string larger than 8000 charachter适合保存大于 8000 个字符的字符串的数据类型
【发布时间】:2010-05-23 16:03:02
【问题描述】:

SQL 数据库中存储超过 8000 个字符的字符串的合适数据类型是什么?

【问题讨论】:

  • 不清楚你的问题是什么。 CREATE TABLE 失败了吗?或者你想declare @theString varchar(max)?

标签: sql-server sql-server-2008 large-text


【解决方案1】:

对于 SQL Server 2005+ varchar(max) 或 nvarchar(max) 取决于您是否需要另存为 unicode。

如果您没有此要求(或预计永远需要),varchar 选项会更节省空间。

您没有在问题中提供特定版本的 SQL Server。在 2005 年之前,它应该是 text 数据类型。

注意:在回答您的评论时,请完全按照书面说明使用 'varchar(max)'。不要用数字代替“max”!

【讨论】:

  • 我尝试了 varchar(max) 和 nvarchar(max) 但失败了,因为 max = 4000 for nvar and 8000 for var
  • 你能发布失败的完整代码吗?或者解释一下你在什么情况下使用它并遇到问题?
  • @salamonti: varchar(max)肯定可以处理超过 8000 个字符!您的 SQL 代码或流程一定有其他问题 - 请发布更多信息!
  • @salamonti 您似乎完全无视了进一步详细信息的请求,但另一个猜测可能是,如果您在 ADO.NET 中使用它的地方需要一个数字,则需要使用 -1 .
  • 对不起,但它工作得很好对不起,问题不在数据类型中,我解决了问题,现在工作完美,感谢您的帮助
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-23
  • 2015-02-08
  • 1970-01-01
  • 1970-01-01
  • 2013-11-30
  • 1970-01-01
相关资源
最近更新 更多