0

我在SQLiteConnection类中有两个方法,即

public void UserA(String user, String name, String email, byte[] blob){};

public void UserB(String user, String name, String email, byte[] blob){};

我想将这两种方法中得到的值结合起来,将它传递给用于存储在 sqlite 数据库中的第三种方法。

public void TwoUser(String user1, String name1, String email1, byte[] blob1, String user2, String name2, String email2, byte[] blob2){};

但我不知道如何访问我在UserA()中获得的值(String user, String name, String email, byte[] blob),并在TwoUser()中使用它。

可以使用什么方法来获取UserA()中的值,并在TwoUser()中使用它。

或者我是否可以先将 UserA 保存在 TwoUser 数据库中,当我从 UserB 获取数据然后更新 TwoUser 数据库时?意味着将数据单独保存在同一列下?可能吗?

编辑

我的项目用于交换项目,首先所有用户都需要上传他们的项目,所以我将项目数据保存在数据库中,如下所示。

下一个 userA 将从 UserB 中选择项目,所以最后我想将两个项目数据存储在新的数据库中显示我可以这样交换结果。

这是用于存储不同用户数据的数据库。

在此处输入图像描述

这就是我想要的结果,上面显示的是 UserA 项目的详细信息,下面是来自 UserA 和 UserB 的交换结果。

在此处输入图像描述

public void insertItem(String user, String name, String condition, String email, String category,byte[] blob) {
        ContentValues cv = new ContentValues();
        cv.put(ItemDb.USER, user);
        cv.put(ItemDb.NAME, name);
        cv.put(ItemDb.CONDITION, condition);
        cv.put(ItemDb.EMAIL, email);
        cv.put(ItemDb.CATEGORY, category);      
        cv.put(ItemDb.IMAGE,blob);


        db = sqlHp.getWritableDatabase();
        db.insert(ItemDb.TABLE, null, cv);
        db.close();
    }
4

1 回答 1

1

这是您在上面使用的一种冗余方法,UserA 和 UserB 具有相同的参数(并且可能具有相同的功能)。如果我是你,我会这样做(只有一种方法):

public void user(String user[], String name[], String email[], byte blob[]){

  String user1=user[0], user2=user[1];  
  String name1=name[0], name2=name[1];
  String email1=email[0], email2=email[1];
  byte blob1=blob[0], blob2=blob[1];

  //What to do next

}
于 2013-06-03T22:54:12.613 回答