使用什么数据类型而不是'ntext'数据类型?

时间:2011-05-12 19:43:46

标签: sql-server sql-server-2000

我想为我的一个表创建一个触发器,其中包含ntext datatype字段,因为您知道无法为ntext datatype写入触发器。 现在我想用ntext数据类型替换nvarcharThe ntext最大长度为2,147,483,647个字符,而nvarchar(max)为4000个字符。 我可以使用什么数据类型而不是ntext数据类型。 或者有什么方法可以在我有ntext数据类型时写入触发器? 最好说我的数据库之前是用SQL 2000设计的,并且它充满了数据。

2 个答案:

答案 0 :(得分:2)

你对sql server 2000运气不好,但是你可以将一堆nvarchar(4000)变量链接在一起。它是一个黑客,但它可能是你唯一的选择。我还会对您的数据进行评估,并查看该列中实际拥有的最大数据。很多时候,列是在预期大数据集的情况下制作的,但最终却没有它们。

答案 1 :(得分:0)

在MSDN中我看到了这个: *重要* 将来的Microsoft SQL Server版本中将删除ntext,text和image数据类型。避免在新的开发工作中使用这些数据类型,并计划修改当前使用它们的应用程序。请改用nvarchar(max),varchar(max)和varbinary(max)。

固定和可变长度数据类型,用于存储大型非Unicode和Unicode字符和二进制数据。 Unicode数据使用UNICODE UCS-2字符集。

并且它更喜欢nvarchar(MAX),您可以在下面看到详细信息:

nvarchar [(n | max)] 可变长度的Unicode字符串数据。 n定义字符串长度,可以是1到4,000之间的值。 max表示最大存储大小为2 ^ 31-1个字节(2 GB)。存储大小(以字节为单位)是输入数据的实际长度的两倍+ 2个字节。 nvarchar的ISO同义词是国家字符变化和国家字符变化。

相关问题