我正在尝试执行查询以从表中检索一些数据。
以下是我的询问:
cursor = myDB.rawQuery("SELECT * FROM myTable WHERE myNumber="+"'myCustomNumber'", null);
其中myNumber的类型为“TEXT”
但每次我得到cursor.getCount() = 0;
我的查询似乎有误。
请告诉我上述查询的正确写法。
答案 0 :(得分:1)
在您的查询中,作为myNumber传递的参数已成为文本,因为它周围有双引号。
将其更改为,
cursor = myDB.rawQuery("SELECT * FROM myTable WHERE myNumber = ' " + myCustomNumber + "'", null);
答案 1 :(得分:0)
我认为您应该使用以下代码:
cursor = myDB.rawQuery(" SELECT * FROM myTable WHERE myNumber ='" + myCustomNumber +"'",null);
我希望它对你有用。
答案 2 :(得分:0)
试试这个
String phoneNo =“0000000000”;
String query =“Select * from where mynumber ='”+ phoneNo +“'”;
cursor = myDB.rawQuery(query,null);
答案 3 :(得分:0)
你可以执行该查询,即
rawQuery("SELECT * FROM myTable WHERE myNumber= = ? ", new String[] {"myCustomNumber"});
答案 4 :(得分:0)
在您使用的查询中,该数字尚未在引号中传递。
cursor = myDB.rawQuery("SELECT * FROM myTable WHERE myNumber="+"'myCustomNumber'", null);
该查询意味着myNumber= myCustomNumber
字面意思,而不是变量值。
您需要在myCustomNumber之前和之后添加引号,如:
cursor = myDB.rawQuery("SELECT * FROM myTable WHERE myNumber="+"'"+myCustomNumber+"'", null);