关于SQL Server 2000 Varchar长度的一个问题!!请高手解答

为什么我用Varchar(8000)类型的变量存字符返回的时候会截断呢,并且都没有报错,好像都只能返回254个英文字母...可是他的长度不是8000吗?请问各位高手.是我... 为什么我用Varchar(8000) 类型的变量存字符返回的时候会截断呢,并且都没有报错,好像都只能返回254个英文字母...可是他的长度不是8000吗?请问各位高手.是我的SQL设置有问题还是本来就是这样的呢? 展开
 我来答
汐然6蟻瀶
2014-06-23 · TA获得超过186个赞
知道答主
回答量:170
采纳率:87%
帮助的人:50.5万
展开全部
这个情况 .... VARCHAR是一种比CHAR更加灵活的数据类型,同样用于表示字符数据,但是VARCHAR可以保存可变长度的字符串。其中M代表该数据类型所允许保存的字符串的最大长度,只要长度小于该最大值的字符串都可以被保存在该数据类型中。因此,对于那些难以估计确切长度的数据对象来说,使用VARCHAR数据类型更加明智。VARCHAR数据类型所支持的最大长度也是255个字符。 --------摘自<百度百科> 所以,你定的长度8000也没用,因为它最多只能为255个字符,至于你返回的只有254个就不知道了.其实如果你非要存储大量的数据的话,建议你用 Text 类型,这个最多可以存储2GB的数据,当然,如果你没有必要存放那么多东西,就建议你用nvarchar了,这个比varchar灵活 . 而且也不是很占资源,毕竟数据库资源也是很重要的..
hiriqui
2014-06-23 · TA获得超过142个赞
知道答主
回答量:176
采纳率:0%
帮助的人:110万
展开全部
1、SqlServer是支持Varchar(8000) 的,最多8000个字符,4000个汉字; 2、你的问题在于:你用Varchar(8000)的变量,但是你的数据库该字段的定义长度是varchar(254)吧?所以最后存储时会被截断。把该字段的长度修改为varchar(8000)即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式