在QT调用别人的ACCESS数据库时,需求是根据姓名查询其他信息,发现有的信息查询不出来,进入到access数据库发现有记录里有空格,用ACCESS中通配符匹配可以查到数据,但在QT中用通配符则不行。后来发现并不是空格,而是换行,但在ACCESS中通过通配符也能查到,在QT中却查不到(也许是兼容性问题?),最后只能对数据库进行处理。
方法是批量将表中的换行批量替换,
Access用chr函数表示ascii码,
通过查询,换行的ascii码是10,利用Update和Replace批量将数据库中数据换行替换,
UPDATE member_data SET member_data.mname = Replace(mname,Chr(10),'');
再次查询即可查出正确结果。同理,回车的话其ASCII码为13,空格的话直接用Replace(mname,' ','')即可。