0

我遇到了与这篇文章相同的问题 Showing users only their own uploads

我还有两个数据库,一个用于上传内容,另一个用于登录,我的问题是如何执行此查询: SELECT * FROM photos WHERE author = AUTHENTICATED_USER_ID in android sqlite。

这是我在SQLiteConnector类中的原始代码,只能显示所有图片。

public Cursor getAllItem() {
        db = sqlHp.getReadableDatabase();

        cur=db.query(ItemDb.TABLE,null, null, null, null, null, "name");

        return cur;
    }

编辑

我尝试如下进行查询,但仍然有错误,请问有什么想法吗? 活动类别

private class GetItem extends AsyncTask<Object, Object, Cursor> {
        ItemSQLiteConnector dbConnector = new ItemSQLiteConnector(ItemActivity.this);

        @Override
        protected Cursor doInBackground(Object... params) {
            return dbConnector.getAllItem(UserName);
        }

        @Override
        protected void onPostExecute(Cursor result) {
            itemAdapter.changeCursor(result);           
        }

    }

SQLiteConnector 类

public Cursor getAllItem(String email) {

        db = sqlHp.getReadableDatabase();       
        cur=db.query(ItemDb.TABLE,null, "email="+ email, null, null, null, "name");     
        return cur;

    }
4

1 回答 1

0

我会试试这个,假设你有一个包含经过身份验证的用户 ID 的字符串用户名:

 String[] userID = new String[] {
     usename
 };

 cur = db.query("photos", null, "author = ?", userId, null, null, "name")

第一个值“photos”表示哪个表。

第二个值“null”表示您需要所有列。

第三个值,“作者 = ?” 是选择过滤器,userId 是要与之比较的值。

最后的“名称”是将用于排序顺序的列。

于 2013-06-01T15:03:00.393 回答