2013-05-05 42 views
0

我想改变我的所有功能访问sqlite解析。 我是新来解析并找不到任何解决方案。从sqlite更改为解析

我已经成功地改变了功能

public void register(String email,String password) { 
    ParseObject o = new ParseObject("register"); 
    o.put("email", email); 
    o.put("password", password); 
    o.saveInBackground(); 
    //SQLiteDatabase db = getWritableDatabase(); 
    //db.execSQL("insert into t_userInfo(email,password) values('" 
      //+ email + "','" + password + "')"); 
} 

目前正在对下一功能,将需要一些帮助

public Cursor login(String email,String password){ 
    SQLiteDatabase db = getReadableDatabase(); 
    Cursor cursor = db.rawQuery("select * from t_userInfo where email='"+email+"' and password='"+password+"'", null); 
    return cursor; 
} 

public Cursor findInfoByEmail(String email){ 
    SQLiteDatabase db = getReadableDatabase(); 
    Cursor cursor = db.rawQuery("select * from t_userInfo where email='"+email+"'", null); 
    return cursor; 
} 

感谢

回答

0

首先,你可能想看看“解析”方式来处理用户注册和登录,而不是编写自己的逻辑。

https://parse.com/docs/android_guide#users

但是,要回答你的问题。为了从Parse获取数据,你可以这样做。

ParseQuery query = new ParseQuery("register"); 
query.whereEqualTo("email", "<insertemailhere>"); 
query.getFirstInBackground(new GetCallback() { 
    public void done(ParseObject* object, ParseException e) { 
    if (object == null) { 
     Log.d("user", "The getFirst request failed."); 
    } else { 
     Log.d("user", "We got a object!"); 
    } 
    } 
}); 
+0

嗨汉克,我正在转换我现有的应用程序从连接到sqlite解析,因此试图重用一些函数和方法。 – user2351976 2013-05-05 14:37:11

+0

public Cursor login(String email,String password){ \t \t ParseQuery query = new ParseQuery(“register”); \t \t query.whereEqualTo(“email”,email); \t \t query.whereEqualTo(“password”,password); \t \t query.getFirstInBackground(新GetCallback(){ \t \t公共无效完成(的parseObject对象,ParseException的E){ \t \t如果(对象== NULL){ \t \t Log.d( “用户”,“该getFirst请求失败 “); \t \t}其他{ \t \t Log.d(” 用户”, “我们得到了一个对象!”); \t \t} \t \t} \t \t}); \t \t return null; \t} 如何不能找出将返回与我的sqlite相同的值的返回值。 – user2351976 2013-05-05 14:38:32

+0

解析永远不会返回一个游标,你最好不要模仿旧的方式。这从来没有持久。另请注意,该方法实际上是如何通过回调方法返回的。您也可以将其作为阻止查询运行(删除InBackground,请参阅文档。) – hank 2013-05-05 15:29:13