C# 我应该使用什么数据类型来存储文本数据?
我正在制作一个配置文件系统,我在数据库中有一个名为AboutMe的字段,它的数据类型是text 此字段最多可包含30000个字符。出现的问题是,如果我最多使用27000个字符或4000多个字符,它们不会显示在UI上,而是会截断内容,只显示很少的字符。 如果我使用4000个字符或超过4000个字符,UI显示的字符少于4000个C# 我应该使用什么数据类型来存储文本数据?,c#,sql-server-2008,C#,Sql Server 2008,我正在制作一个配置文件系统,我在数据库中有一个名为AboutMe的字段,它的数据类型是text 此字段最多可包含30000个字符。出现的问题是,如果我最多使用27000个字符或4000多个字符,它们不会显示在UI上,而是会截断内容,只显示很少的字符。 如果我使用4000个字符或超过4000个字符,UI显示的字符少于4000个 我使用的是SQL server 2008 R2数据库。从SQL server 2005开始,对于非Unicode文本,应该使用VARCHARMAX,对于Unicode文本,
我使用的是SQL server 2008 R2数据库。从SQL server 2005开始,对于非Unicode文本,应该使用VARCHARMAX,对于Unicode文本,应该使用NVARCHARMAX,每个字符最多使用2个字节。TEXT和NTEXT已被弃用,不应再使用 这些是当前的数据类型,可以像对待任何其他文本/字符串列一样对待它们。所有的字符串函数都可以很好地处理它们 每个列的最大容量为2 GB数据,即20亿个非Unicode字符或10亿个Unicode字符
考虑到像托尔斯泰的《战争与和平》这样的一本很长的书可能有500万个字符或不到56万个单词,这将足够用Unicode存储该书至少200次-对于大多数应用程序来说应该足够了….从SQL Server 2005开始,对于非Unicode文本,您应该使用VARCHARMAX,或用于Unicode文本的NVARCHARMAX,每个字符最多使用2个字节。TEXT和NTEXT已被弃用,不应再使用 这些是当前的数据类型,可以像对待任何其他文本/字符串列一样对待它们。所有的字符串函数都可以很好地处理它们 每个列的最大容量为2 GB数据,即20亿个非Unicode字符或10亿个Unicode字符 考虑到像托尔斯泰的《战争与和平》这样的一本很长的书可能有500万个字符或不到56万个单词,这将足够用Unicode存储该书至少200次——对于大多数应用程序来说应该足够了……文本数据类型是,因此您应该使用varcharmax 如果您所说的UI是指SQL Managament Studio,那么它不会显示大文本值是正确的。出于性能原因,编辑器有一些类似的限制 当您以编程方式访问数据时,没有这样的限制。但是,您应该知道,大文本值是在一个单独的数据流中发送的,因此,如果每条记录有多个大文本值,则必须按照选择它们的顺序访问它们。文本数据类型是,因此应改为使用varcharmax 如果您所说的UI是指SQL Managament Studio,那么它不会显示大文本值是正确的。出于性能原因,编辑器有一些类似的限制
当您以编程方式访问数据时,没有这样的限制。但是,您应该知道,大文本值是在单独的数据流中发送的,因此,如果每个记录有多个大文本值,您必须按选择顺序访问它们。您可以使用ntext数据类型进行访问。您可以使用ntext数据类型进行访问。问题也被截断。请发布表定义。问题也被截断。请发布表定义。