如何在查询方法android studio sqlite中传递两个或多个选择参数

如何在查询方法android studio sqlite中传递两个或多个选择参数,android,sqlite,android-sqlite,Android,Sqlite,Android Sqlite,我是Android Studio和Android开发的新手,在使用游标将多个参数传递到sqlite时遇到问题 我有以下资料: Cursor cursor = DB.rawQuery("select _id, BookingType as bookingType from " + table + " where " + SqLiteTableData.TableStructure.KEY_BOOKING_DATE+" = ? AND " + SqLiteTableData.TableStruc

我是Android Studio和Android开发的新手,在使用游标将多个参数传递到sqlite时遇到问题 我有以下资料:

Cursor cursor = DB.rawQuery("select _id, BookingType as bookingType from " + table + " where " + SqLiteTableData.TableStructure.KEY_BOOKING_DATE+" = ?  AND  " + SqLiteTableData.TableStructure.KEY_BOOKING_TIME+ " = ? " , new String[]{a, b });
SQLiteDirectCursorDriver: select _id, BookingType as bookingType from Bookings where BookingDate = ?  AND  BookingTime = ?
调试器中的哪个显示以下内容:

Cursor cursor = DB.rawQuery("select _id, BookingType as bookingType from " + table + " where " + SqLiteTableData.TableStructure.KEY_BOOKING_DATE+" = ?  AND  " + SqLiteTableData.TableStructure.KEY_BOOKING_TIME+ " = ? " , new String[]{a, b });
SQLiteDirectCursorDriver: select _id, BookingType as bookingType from Bookings where BookingDate = ?  AND  BookingTime = ?
未传递参数

我花了很长时间在这方面,并查看了其他帖子,如

但却无法让它发挥作用


感谢您的帮助

您的代码是正确的。参数传递正确


调试器不显示参数值,因为它们从未合并到SQL命令文本中。数据库将在稍后阶段处理参数。

您的代码是正确的。参数传递正确


调试器不显示参数值,因为它们从未合并到SQL命令文本中。数据库将在稍后阶段处理参数。

我建议您可以使用
query
函数而不是rawQuery,因为它非常容易处理

在您的情况下,您的查询功能将是:

    Cursor cursor = DB.query(table, "_id, BookingType as bookingType", SqLiteTableData.TableStructure.KEY_BOOKING_DATE+"= ? AND"SqLiteTableData.TableStructure.KEY_BOOKING_TIME+"= ?", new String[]{a,b},null, null);

我建议您可以使用
query
函数代替rawQuery,因为它非常容易处理

在您的情况下,您的查询功能将是:

    Cursor cursor = DB.query(table, "_id, BookingType as bookingType", SqLiteTableData.TableStructure.KEY_BOOKING_DATE+"= ? AND"SqLiteTableData.TableStructure.KEY_BOOKING_TIME+"= ?", new String[]{a,b},null, null);

嗨@CL谢谢,不知道为什么没有返回记录:(嗨@CL谢谢,不知道为什么没有返回记录:(