gpt4 book ai didi

android - 将 FK 值添加到现有表条目

转载 作者:行者123 更新时间:2023-11-30 01:46:37 24 4
gpt4 key购买 nike

我的 Android 数据库有一些问题。

有两个表。第一个 TABLE_LISTELEMENT 处理一个元素需要的所有数据。

public static final String SQL_CREATE_LE =
"create table " + TABLE_LISTELEMENT + "(" +
COL_LEID + " integer primary key autoincrement, " +
COL_PRODUCT + " text, " +
COL_LABEL + " text, " +
COL_SERIAL + " text, " +
COL_MAC + " text, " +
COL_DAAID + " text, " +
COL_BILL + " text, " +
COL_FK_RID + " REFERENCES room(rid)" + ")";

我添加了 COL_FK_RID 外键来引用我的第二个表 (TABLE_ROOMS)

public static final String SQL_CREATE_R =
"create table " + TABLE_ROOM + "(" +
COL_RID + " integer primary key autoincrement, " +
COL_RNAME + " text" + ")";

现在我有了这两个表,但我不确定如何将 FK 添加到我的第一个表中。

首先,我创建了 TABLE_LISTELEMENTS 的元素,并将它们显示在 ListView 中。现在我想获取所有 ListView 条目并添加一个房间。因此,我选择了 TABLE_ELEMENTS 的所有条目:

public boolean insertRoomNr(String room){
SQLiteDatabase db = this.getWritableDatabase();
Cursor dbCursor;

ContentValues contentValues = new ContentValues();

contentValues.put("roomname", room);
db.insert(TABLE_ROOM, null, contentValues);
String RaumId ="";
RaumId = db.rawQuery("SELECT rid FROM room WHERE "+ COL_RNAME + " = ?",new String[]{"null"}).toString();

ContentValues contentValues2 = new ContentValues();

contentValues.put("fkrid", RaumId);
db.update(TABLE_LISTELEMENT, contentValues2 , " WHERE fkrid IS null", null);
return true;
}

但是我现在如何向我的 TABLE_ROOMS 添加一个房间并将他与我选择的所有条目相关联。 (我有一个 EditText 和一个用于输入房间号的 Button)。

我希望你能理解我的问题。

最佳答案

你也可以使用类似的东西:

public boolean setData(String data1, String data2) {

SQLiteDatabase database = this.getWritableDatabase();

ContentValues contentValues = new ContentValues();

contentValues.put("data_example1", data1);
contentValues.put("data_example2", data2);

db.insert(TABLE_EXAMPLE, null, contentValues);

return true;
}

关于android - 将 FK 值添加到现有表条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33627024/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com