数据库、VB高手快来救命!!!非常非常急,一个系统在Win98,Win2000里正常,在Windows Me 里运行不正常!!!

imissyoulipj 2001-11-22 12:33:33
例子如下:

开始时往表里插入时是去掉空格的,可是打开数据库一看,自动加了空格,比如字段长度为8,如果插入"ab",则后面自动加了6位的空格。
当取出来来时,select yhid_in from yh_t where yhm_c='" & trim(sYhm) & "'
(假设sYhm="ab"),由于数据库里是"ab ",所以比较的时侯就不相等了,取不出来!!!!
数据库是SQL Server2000,客户段在WIN ME的话有这个问题,如果在Win98,Win2000的话则没有这个问题,在Win98,Win2000里比较是当作相等的。不知道是不是操作系统的问题,是不是WinMe有下一个补丁来补一补?
那位高手快来帮下忙!
...全文
77 点赞 收藏 10
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
imissyoulipj 2001-11-22
可是为什么只在WIN ME下有这个问题?
回复
FreeBug 2001-11-22
哈哈 是的呀 heeh()的方法可以吗?
回复
imissyoulipj 2001-11-22
哦,对了,请问那位大哥知道还有没有更好的方法?
回复
imissyoulipj 2001-11-22
FreeBug(加佳) 大哥啊,我的表有100多个!字段几千个,修改表的话非常麻烦!
只能先试试 heeh()的方法了。
回复
mmzxg 2001-11-22
应该HEEH的是正确的呀
回复
FreeBug 2001-11-22
以后,也会好一点的。还是改这个 总比你改程序好。
或者你把trim 改成Rtrim试试。
回复
FreeBug 2001-11-22
哪个改动不影响你的程序的,而且对数据库也没有影响 可以试一下 几分钟就可以搞定。改动后的字段长一定要比原来的长
回复
heeh 2001-11-22
select yhid_in from yh_t where rtrim(ltrim(yhm_c))='" & trim(sYhm) & "'
回复
imissyoulipj 2001-11-22
对,我用的是SQL Server2000,但是我很多地方都用了Char啊,难道所有这些都要改掉吗?再说,为什么在Win98,Win2000里面Select 的时候可以取出来,而Windows Me里却不行呢?
回复
FreeBug 2001-11-22
你用什么数据库是SQL SERVER吗 你的字段的数据类型 不要用CHAR 要用VARCHAR就不会补空格了。 例如字段长10,你的字段值为ABC,那就是ABC,不会补空格的。也就不要trim了
回复
相关推荐
发帖

1188

社区成员

VB 数据库(包含打印,安装,报表)
申请成为版主
帖子事件
创建了帖子
2001-11-22 12:33
社区公告
暂无公告