Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 准备好的语句不使用和运算符_Java_Ms Access_Jdbc - Fatal编程技术网

Java 准备好的语句不使用和运算符

Java 准备好的语句不使用和运算符,java,ms-access,jdbc,Java,Ms Access,Jdbc,我试图用java从MS Access数据库中提取一些值。我在以下问题上遇到困难- PreparedStatement p = c.prepareStatement("select GroupMembers from group_data where GroupName = ? and GroupOwnerID = ?"); p.setString(1,gsel); p.setInt(2,empid); 它给了我一个错误-期望的参数太少3 然而,当我使用— PreparedStatement p

我试图用java从MS Access数据库中提取一些值。我在以下问题上遇到困难-

PreparedStatement p = c.prepareStatement("select GroupMembers from group_data where GroupName = ? and GroupOwnerID = ?");
p.setString(1,gsel);
p.setInt(2,empid);
它给了我一个错误-期望的参数太少3

然而,当我使用—

PreparedStatement p = c.prepareStatement("select GroupMembers from group_data where         GroupName = ?");
p.setString(1,gsel);
它很好用

我的表架构是:

GroupName    GroupMembers   GroupOwnerID
text         text           number
第一个查询有什么问题

这是堆栈跟踪

java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] Too few paramet
ers. Expected 3.
        at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6964)
        at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7121)
        at sun.jdbc.odbc.JdbcOdbc.SQLExecute(JdbcOdbc.java:3156)
        at sun.jdbc.odbc.JdbcOdbcPreparedStatement.execute(JdbcOdbcPreparedState
ment.java:215)
        at sun.jdbc.odbc.JdbcOdbcPreparedStatement.executeQuery(JdbcOdbcPrepared
Statement.java:90)
        at ntpc.Sms$1$4$3.actionPerformed(Sms.java:743)
        at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:20
18)
        at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.jav
a:2341)
        at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel
.java:402)
        at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259
)
        at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonL
istener.java:252)
        at java.awt.Component.processMouseEvent(Component.java:6505)
        at javax.swing.JComponent.processMouseEvent(JComponent.java:3320)
        at java.awt.Component.processEvent(Component.java:6270)
        at java.awt.Container.processEvent(Container.java:2229)
        at java.awt.Component.dispatchEventImpl(Component.java:4861)
        at java.awt.Container.dispatchEventImpl(Container.java:2287)
        at java.awt.Component.dispatchEvent(Component.java:4687)
        at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832
)
        at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)

        at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
        at java.awt.Container.dispatchEventImpl(Container.java:2273)
        at java.awt.Window.dispatchEventImpl(Window.java:2719)
        at java.awt.Component.dispatchEvent(Component.java:4687)
        at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
        at java.awt.EventQueue.access$200(EventQueue.java:103)
        at java.awt.EventQueue$3.run(EventQueue.java:694)
        at java.awt.EventQueue$3.run(EventQueue.java:692)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDo
main.java:76)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDo
main.java:87)
        at java.awt.EventQueue$4.run(EventQueue.java:708)
        at java.awt.EventQueue$4.run(EventQueue.java:706)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDo
main.java:76)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThre
ad.java:242)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.
java:161)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThre
ad.java:150)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)

        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)

        at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

您可以查看本官方指南来查询access数据库

如果使用
p.setString(1,1),是否有意义;p、 setInt(2,1)?我想知道
empid
gsel
是否为空不,它们不为空。。。我想得到基于两个约束的结果集…你能不能添加整个Stacktrace和更多的代码(执行语句并获取返回参数)?我添加了stack Trace问题是我无法得到基于两个条件的值我刚刚尝试过,并且使用和的查询。。。正在使用删除选项,但未选择