Chinaunix首页 | 论坛 | 博客
  • 博客访问: 274116
  • 博文数量: 54
  • 博客积分: 1425
  • 博客等级: 上尉
  • 技术积分: 541
  • 用 户 组: 普通用户
  • 注册时间: 2005-08-27 23:26
文章分类

全部博文(54)

文章存档

2018年(2)

2015年(3)

2014年(6)

2013年(5)

2012年(5)

2011年(7)

2010年(14)

2009年(1)

2008年(3)

2007年(6)

2006年(1)

2005年(1)

我的朋友

分类: WINDOWS

2012-10-05 13:53:54

错误描述:
多步OLEDB操作产生错误,如果可能请检查每一OLEDB的状态值,没有工作被完成的错误信息
引用:
Unicode字符集就是为了解决字符集这种不兼容的问题而产生的,它所有的字符都用两个字节表示,即英文字符也是用两个字节表示
如果还为了这个纠结,就直接看看后面的解说,做决定吧。
一般如果用到中文或者其它特殊字符,我就会使用n开头的类型,否则的话直接使用var开头的。 
sql server中的varchar和Nvarchar有什么区别?
答:
varchar(n)
长度为 n 个字节的可变长度且非 Unicode 的字符数据。n 必须是一个介于 1 和 8,000 之间的数值。存储大小为输入数据的字节的实际长度,而不是 n 个字节。
nvarchar(n)
包含 n 个字符的可变长度 Unicode 字符数据。n 的值必须介于 1 与 4,000 之间。字节的存储大小是所输入字符个数的两倍。
两字段分别有字段值:我和coffee
那么varchar字段占2×2+6=10个字节的存储空间,而nvarchar字段占8×2=16个字节的存储空间。
如字段值只是英文可选择varchar,而字段值存在较多的双字节(中文、韩文等)字符时用nvarchar
分析可能的原因:
1、可能是你在存入的值的长度比你定义字段值的长度要长了。
2、字段是设置为varchar还是nvarchar很重要。
答案:
第一种是可能的原因。但是我碰到的问题是第二种原因造成的。
之前该字段使用varchar存入数据,某些数据记录插入时一直报错,有些数据记录不不报错,我对比了这些记录的信息,其中一些字符是特殊字符,比如全角的“.”“?”,去掉就好使,所以我就把字段类型从varchar换成了nvarchar,结果问题排除了!
阅读(1885) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~