Android 为什么这个简单的函数不起作用?
我有一个简单的方法Android 为什么这个简单的函数不起作用?,android,sql,Android,Sql,我有一个简单的方法 public boolean isUser(String pssword) { SQLiteDatabase db= this.getReadableDatabase(); String sql= "select " + USER_NAME + " from "+ TABLE_USERS + " where " + PASSWORD + " =" + " ? "; Log.
public boolean isUser(String pssword)
{
SQLiteDatabase db= this.getReadableDatabase();
String sql= "select " + USER_NAME + " from "+ TABLE_USERS + " where " + PASSWORD + " =" +
" ? ";
Log.e("sql", sql);
Log.e("sqlword", pssword);
db= this.getReadableDatabase();
String [] args= new String[]{String.valueOf(pssword)};
Cursor c = db.rawQuery(sql, args);
if(c.moveToFirst())
{
return true;
}else
{
return false;
}
}
出于测试目的,我将密码添加为12
我运行这个方法,它返回false
然后,我使用SQLiteManager打开数据库并尝试
select username from login where password = '12'
没有记录返回
然后我使用
select * from login
这次我得到了密码为12的记录
那么真正的问题是什么呢
我受够了 密码是文本还是整数字段?字符串…我在表中将字段定义为文本。密码字段数据中是否有空格或换行符等其他字符?当使用select*from login时,您会得到什么,其中password='12'他没有得到他所说的任何内容。所以我认为问题在于他的数据库而不是他的代码