日期:2014-05-20  浏览次数:20852 次

字符串的语法错误 在查询表达式
我有几万行数据,插入到数据库中,一直插不进去,我就一条一条插入。这就遇到问题了。
其中一个字段是“掺高效减水剂高强度砼C40粒径16砼52.2级坍落度35~50”,
可是在sql语句里就变成了“掺高效减水剂高强度砼C40粒径16砼52.2级坍落度35~50\0”,多出了一个“\0”,
而且我在文本可视化工具里只得到了“insert into jsqdde(bm,nr,dw,dj,dj1,ishnt) values('002001','掺高效减水剂高强度砼C40粒径16砼52.2级坍落度35~50"”
如果是完整的话,应该是insert into jsqdde(bm,nr,dw,dj,dj1,ishnt) values('002001','掺高效减水剂高强度砼C40粒径16砼52.2级坍落度35~50\0','m3',227.47,227.47,False)“,
报错的是“字符串的语法错误 在查询表达式 ''掺高效减水剂高强度砼C40粒径16砼52.2级坍落度35~50' 中。”
我想应该是多出的一个“\0” 的问题,请大家帮我看看呀。

------解决方案--------------------
“掺高效减水剂高强度砼C40粒径16砼52.2级坍落度35~50”

应譔是 ~ 这个符号的问题用转一下\~或用replace过滤一下或用其他的
------解决方案--------------------
如果你把数据塞进DataTable中之前并不包含“\0”,那么你就试试在Insert语句中字符类型的数据用N'aaaa'来表示。

试一下吧。

要么就检查一下你装载数据进DataTable的时候数据的变化,debug跟踪一下