SELECT WHERE sql查询

时间:2013-05-04 07:32:56

标签: android

我正在尝试匹配现有数据库中的用户名和密码,并且我在编写SQL查询时遇到了困难。

Cursor cursor = db.rawQuery("Select " + dbh.name + dbh.pass
+ " from tablename where" +dbh.name +"="+ e1.getText().toString()+";", null);

3 个答案:

答案 0 :(得分:1)

您可以使用以下内容执行此操作,但强烈建议不要:

String selectQuery = "SELECT * FROM "+ TABLE_NAME +" WHERE "+COLUMN_USERNAME + " = '"+usrname+"' AND "+COLUMN_PASSWD+" = '"+passwd+"' "; 
//COLUMN_USERNAME is the column name which stores username COLUMN_PASSWD is column storing password
Cursor cursor = database.rawQuery(selectQuery, null);

您可以尝试使用AccountManager类来达到此目的。有些问题涉及如何存储用户名和密码。您应该检查以下主题:

1)Android: Storing username and password?

2)Is it safe to store username + passwords in a local SQLite db in Android?

希望这有帮助。

答案 1 :(得分:0)

将代码编辑为:

Cursor cursor = db.rawQuery("Select " + dbh.name + dbh.pass
+ " from tablename where " +dbh.name +"='"+ e1.getText().toString()+"'", null);

答案 2 :(得分:0)

dbh.name + dbh.pass意味着什么?这两个是不同的列吗?如果是,那么你必须用逗号这两个列名传递,

dbh.name +","+ dbh.pass

并点击选择查询,如

SELECT "+ dbh.name+","+dbh.pass +" FROM TABLE_NAME WHERE dbh.name=?", new String [] { e1.getText().toString() });

希望这能解决您的问题:)