Java Sqlite rawQuery重定时0行
我多次尝试使用rawQuery()获取值,但光标始终返回0行,尽管存在与条件匹配的有效行。这是我的密码:Java Sqlite rawQuery重定时0行,java,android,sqlite,Java,Android,Sqlite,我多次尝试使用rawQuery()获取值,但光标始终返回0行,尽管存在与条件匹配的有效行。这是我的密码: public Cursor getChapIdForAudit(String auditid) { // TODO Auto-generated method stub //String sql="SELECT DISTINCT ChapterID FROM Results WHERE AuditID = "+auditid; Cursor c= sp.rawQuer
public Cursor getChapIdForAudit(String auditid) {
// TODO Auto-generated method stub
//String sql="SELECT DISTINCT ChapterID FROM Results WHERE AuditID = "+auditid;
Cursor c= sp.rawQuery("SELECT ChapterID FROM Results WHERE AuditID ="+auditid,null);
c.moveToFirst();
return c;
}
呼叫方代码:
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
Intent i= getIntent();
String auditid=i.getExtras().getString("audit_id");
ResultsTableManager results= new ResultsTableManager(ScoringRecordsActivity.this);
results.open();
Cursor chapIdCursor=null;
chapIdCursor= results.getChapIdForAudit(auditid);
System.out.println(chapIdCursor.getCount());
}
我实际上需要的是一个select distinct查询,但它不起作用,所以我尝试了正常的select,但也不起作用。如果您在第一次安装后更改了数据库,您可能必须完全卸载应用程序并重新安装,才能获得新表。我知道,但是我的数据库没有改变。在这种情况下,确定问题的根源并不容易,因为它可能是很多事情。如果您只是查询“SELECT*FROM Results”,您会得到任何行吗?实际上,如果我在这个函数中检查光标长度,它是正确的,但是当我将它返回到另一个活动时,它会变成0;