【发布时间】:2013-01-31 19:08:12
【问题描述】:
我有一个插入语句,其中一列的列类型为 nvarchar(max) desc。我注意到,当我查看数据库中的某些记录时,desc 列有时是空白的。由于通过我的 GUI 进行了验证,我知道这是不可能的。经过进一步测试,我发现如果该列的文本太大,它就不会插入该数据。我发现这种奇怪的 b/c 我认为它会给我一些错误或不完全插入记录,但它只是将该列留空。 nvarchar(max) 是否有限制,如果有的话,我可以使用其他数据类型来代替它。我做了一个测试,我尝试插入的字符超过 20,000 个,但最终用户输入会有所不同。
'************ **编辑******** *************** *****
感谢大家的快速回复,通过研究我发现你们是正确的,它会保存(保存)这么多信息。我发现,当使用 Microsoft Management Studio 时,如果当您的结果返回时,如果您查询的列的大小有很多字符,它就会显示为空白。为了验证这一点,我使用了 len(COLUMN_NAME) 函数并看到字符长度符合我的预期。有谁知道我可以更改 Microsoft Management Studio 中的设置以实际看到结果的方法吗?
【问题讨论】:
-
如果您可以展示如何从代码中插入数据以及数据的实际外观,将会有所帮助。 “空白”是什么意思:
NULL,一个空字符串或其他什么?其他人提到了NVARCHAR(MAX)的限制(请参阅documentation),但您的问题中没有足够的信息来准确理解您所看到的内容。
标签: sql-server