我没有使用VB6进行很多编码,但是我现在正在更新现有的应用程序,并且遇到了一些麻烦。
我解决了这个问题。在VB6中,使用 LIKE 时,查询必须使用% 通配符,但是在MS Access中,必须使用***** 通配符。
我正在查询相同的数据库-(在MS Access中)。
在MS Access中进行查询时,以下查询有效:
SELECT * FROM table WHERE field LIKE '*something*'
当我在VB6中建立该查询时,我必须这样做:
SELECT * FROM table WHERE field LIKE '%something%'
发生了什么?那是正常的吗?
最佳答案
Access曾经有自己不兼容的SQL版本,因此出于传统原因,我认为它使用*。
当您使用VB6时,通常使用ODBC和更标准化的SQL,因此适用更常见的通配符。请记住,VB6不在乎您使用哪个数据库,因此如果您使用其他内容(例如SQL Server),则可能只会了解百分比符号。
我猜想Access-ODBC连接器会为您转换内容。
关于sql - MS Access查询:为什么从VB6应用程序调用LIKE时行为会有所不同?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/690731/