数据库查询返回null在我的Android应用程序试图通过将一个参数传递给where子句从数据库获取值,但它总是返回null ...并且在logcat中没有错误.. 。 我似乎无法弄清楚这里有什么问题?数据库查询返回null即使它有值
请帮忙!
我在哪里callimg数据库函数的代码:
appmname=mDbHelper.getMname(appName);
applname=mDbHelper.getLname(appmname);
customername=appName+appmname+applname;
// app_formno=mDbHelper.getAppno(settings.getString("ap_First_Name", ""));
s=mDbHelper.fetchDetails(appName);
s=mDbHelper.getMainData(customername);
这些返回数据库值的功能:
public String getMname(String fname)
{
String mname = null;
try
{
String sql="select app_mname from lnt_data_table where app_fname = '"+fname+"'";
Cursor c=mDb.rawQuery(sql, null);
if (c != null) {
c.moveToFirst();
while (!c.isAfterLast()) {
mname=c.getString(0);
}
c.close();
}
}
catch(Exception e)
{
e.printStackTrace();
}
return mname;
}
public String getLname(String mname)
{
String lname = null;
try
{
String sql="select app_lname from lnt_data_table where app_mname= '"+mname+"'";
Cursor c=mDb.rawQuery(sql, null);
if (c != null) {
c.moveToLast();
while (c.isBeforeFirst() != true) {
lname=c.getString(0);
}
c.close();
}
}
catch(Exception e)
{
e.printStackTrace();
}
return lname;
}
如果我给这个敬酒消息
Toast.makeText(ListViewDetails.this,appName+ appmname +applname, Toast.LENGTH_LONG).show();
它当数据库中有值时返回null!
尝试加入'SQLiteQueryBuilder MDB =新SQLiteQueryBuilder();'里面你的方法..并检查是否有logtraces .. – CRUSADER
按照这个教程它会帮助你http://www.vogella.com/articles/AndroidSQLite/article.html –