SQL Server数据库字段的长度
我已经将SQLServer数据库varchar类型字段的长度设置为1024了,它怎么还经常出现“将截断字符串或二进制数据”错误提示啊?...
我已经将SQL Server数据库varchar类型字段的长度设置为1024了,它怎么还经常出现“将截断字符串或二进制数据”错误提示啊?
展开
4个回答
展开全部
如果你的SQL是SQL2000varchar最长长度可以是8000,
如果是SQL2005以上版本可以支持varchar(max),最长可达2G的字段容量数据
你可以试试,也许你的1024还是不够。
如果是SQL2005以上版本可以支持varchar(max),最长可达2G的字段容量数据
你可以试试,也许你的1024还是不够。
更多追问追答
追问
一个中文字符不是只占两个字节吗?我刚才特意数了一下,就30个中文汉字,应该是占60个字节吧?1024个字节长度难道还不够60个字节用吗?它这1024的长度到底是个什么意思啊?还有要补充的是我用的是SQL Server 2000的数据库。
追答
没错,1个汉字是占两个字节,那你检查一下,也许不是这里溢出呢?
展开全部
nvarchar(n)一个字符会占两个字节空间。
varchar(n)中文占两字节空间,英文占一个。
n的取值范围:
nvarchar(n) n的范围是:1与4000之间
varchar(n) n的范围是:1与8000之间
varchar(n)中文占两字节空间,英文占一个。
n的取值范围:
nvarchar(n) n的范围是:1与4000之间
varchar(n) n的范围是:1与8000之间
追问
是啊,这个我知道啊。我刚才插入的一个记录,就30个中文汉字,应该60个字节吧?可就60个字节,它也出错。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个主要是你在 插入数据的时候没有把要插入的数据类型写对!
比如
insert into student (StuID)
values
比如
insert into student (StuID)
values
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你把varchar改成text试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询