繁体   English   中英

我必须使用SQL-Statement中的哪个通配符进行Access * .mdb文件查询(使用Java和JDBC:ODBC桥)

[英]Which wildcard in SQL-Statement do I have to use for an Access *.mdb-file query (using Java & JDBC:ODBC bridge)

我尝试执行以下SQL语句(在我的Java应用程序中):

SELECT * FROM Tbl_Job WHERE jobname LIKE '%aa%';

但是我无法使用MS Access(2002)得到相同的(正确的?)结果:

SELECT * FROM Tbl_Job WHERE jobname LIKE '*aa*';

通过这个示例,Access将为我提供400个数据集,而我的Java应用程序只会给我一点点我不知道数据集的确切数量。

我尝试在我的Java应用程序中使用[*] - 通配符,但它根本没有给我任何数据集。 此外,我试图用[“]字符替换[']字符,但这也不起作用。

我不知道这是否相关,但我认为* .mdb文件是使用MS Access(2000)创建的

我的Java代码:

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection connection = DriverManager.getConnection("jdbc:odbc:_
                        Driver={Microsoft Access Driver_
                        (*.mdb)};DBQ=C:\database.mdb");
Statement stm = connection.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
                ResultSet.CONCUR_READ_ONLY);
ResultSet rs = stm.executeQuery(sql);
while(rs.next())
    do_some_stuff();

建议您从Java和直接在Access中尝试此SQL语句。

SELECT Count(*) AS num_rows FROM Tbl_Job WHERE jobname ALike '%aa%';

如果num_rows在两种情况下都相同,请更改第一个查询中的WHERE子句以匹配此子句。

如果num_rows在两种情况下都不相同,请描述它们的不同之处以及哪些是正确的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM