SQLServer的字段能存储的长度远远达不到该字段的数据类型限制的长度
答案:5 悬赏:0 手机版
解决时间 2021-03-11 12:14
- 提问者网友:浩歌待明月
- 2021-03-10 21:26
我分别设置字段类型为varchar , nvarchar , text , ntext 并且把长度设置为他们的最大长度,但无论是哪种类型插入的字数一多(绝对远远小于设置的长度),就会提示错误:“输入的值与数据类型或长度的长度不一致或超出网格缓冲区限制”,这是为什么,该怎样解决?求教高手
最佳答案
- 五星知识达人网友:思契十里
- 2021-03-10 22:06
varchar和text是存储的数字是内存空间,而nvarchar和ntext储存的字数,
例如:
varchar(20)就只能存储20的空间数(一个汉字占两个空间数,字母,数字占一个空间数),那么就只能放10个汉字,或20个数字,字母,text也一样
nvarchar(20)为可变形,里面为20就只能放20个(数字,字母,汉字)随便放,就不记空间,就记个数
例如:
varchar(20)就只能存储20的空间数(一个汉字占两个空间数,字母,数字占一个空间数),那么就只能放10个汉字,或20个数字,字母,text也一样
nvarchar(20)为可变形,里面为20就只能放20个(数字,字母,汉字)随便放,就不记空间,就记个数
全部回答
- 1楼网友:十年萤火照君眠
- 2021-03-11 02:08
你可以变量定为char
- 2楼网友:冷風如刀
- 2021-03-11 01:28
示例:
create proc p_test
(
@phone varchar(20), --输入参数:手机号
@result smallint output --输出参数:0 手机号长度正常;1 手机号异常
)
as
declare @len int
set @len=len(@phone)
if @len=11
begin
set @result=0
print '手机号长度正常'
end
else
begin
set @result=01
print '手机号异常'
end
另外,站长团上有产品团购,便宜有保证
- 3楼网友:玩家
- 2021-03-10 23:58
用sql语句可以插进去,也可以显示出来,但如果过长的话插进去后在企业管理器里看不到数据,可以用语句查询出来
- 4楼网友:妄饮晩冬酒
- 2021-03-10 23:35
varchar 和 text 都是根据字符的长度来调正它的长度的,只有nvarchar,ntext是固定长度的。
你把图截下来,我看看。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯