我不做太多的VB6编码,但我现在正在更新一个现有的应用程序,只是遇到了一个障碍。
我解决了问题。在VB6中,查询在使用(如)时必须使用% 通配符,但在MS Access中,您必须使用*通配符。
我在查询同一个数据库-(它在MS Access中)。
当从MS Access内部查询时,以下查询工作:
SELECT * FROM table WHERE field LIKE '*something*'当我在VB6中构建这个查询时,我必须这样做:
SELECT * FROM table WHERE field LIKE '%something%'发生什么事了呢?这正常吗?
发布于 2009-03-27 17:38:22
Access以前有自己不兼容的SQL版本,因此我认为它使用*是出于遗留原因。
当您使用VB6时,通常使用ODBC和更标准化的SQL,因此应用更常见的通配符。请记住,VB6并不关心您使用哪个DB,所以如果您使用其他东西(例如,server),它可能只会理解百分比符号。
我猜Access-ODBC连接器会为您转换一些东西。
发布于 2009-03-28 01:19:44
我不知道这是否适用于VB6,但在Access中,可以使用
ALIKE '%something%'不管您是在DAO还是ADO中使用VBA,还是在查询编辑器中创建查询,%字符都将被视为通配符。
https://stackoverflow.com/questions/690731
复制相似问题