📜  从数据库中设置标签 (1)

📅  最后修改于: 2023-12-03 15:21:58.071000             🧑  作者: Mango

从数据库中设置标签

在应用程序中,为了更好地管理和分类数据,经常需要使用标签来给对象打上标记。将标签存储在数据库中,可以大大简化标签的添加、删除和搜索。

以下是一个使用SQLiteDatabase类进行标签设置的示例:

// 创建标签表
db.execSQL("CREATE TABLE IF NOT EXISTS tag ("
        + "tag_id INTEGER PRIMARY KEY AUTOINCREMENT,"
        + "tag_name TEXT NOT NULL)");

// 添加标签
public void addTag(String tagName) {
    ContentValues contentValues = new ContentValues();
    contentValues.put("tag_name", tagName);
    db.insert("tag", null, contentValues);
}

// 删除标签
public void deleteTag(int tagId) {
    db.delete("tag", "tag_id = ?", new String[]{String.valueOf(tagId)});
}

// 查询标签
public List<String> searchTag(String keyword) {
    List<String> tagList = new ArrayList<>();
    Cursor cursor = db.query("tag", new String[]{"tag_name"}, "tag_name like ?",
            new String[]{"%" + keyword + "%"}, null, null, null);
    while (cursor.moveToNext()) {
        String tagName = cursor.getString(cursor.getColumnIndexOrThrow("tag_name"));
        tagList.add(tagName);
    }
    cursor.close();
    return tagList;
}

该示例中,首先创建了一个名为tag的数据表,包含tag_id和tag_name两个字段。然后定义了addTag、deleteTag和searchTag三个方法:

  • addTag方法用于添加标签,接受一个标签名作为参数,创建一个ContentValues对象设置tag_name字段的值,然后调用db.insert方法将其插入到tag表中。
  • deleteTag方法用于删除标签,接受一个标签ID作为参数,使用db.delete方法将其从tag表中删除。
  • searchTag方法用于查询标签,接受一个关键字作为参数,创建一个Cursor对象执行db.query方法,查询出所有tag_name包含关键字的行,然后将其添加到List对象中并返回。

以上就是从数据库中设置标签的示例代码,开发者可以根据需要进行修改和扩展,便于更好地管理应用程序中的数据。

Markdown代码片段
# 从数据库中设置标签

在应用程序中,为了更好地管理和分类数据,经常需要使用标签来给对象打上标记。将标签存储在数据库中,可以大大简化标签的添加、删除和搜索。

以下是一个使用SQLiteDatabase类进行标签设置的示例:

```java
// 创建标签表
db.execSQL("CREATE TABLE IF NOT EXISTS tag ("
        + "tag_id INTEGER PRIMARY KEY AUTOINCREMENT,"
        + "tag_name TEXT NOT NULL)");

// 添加标签
public void addTag(String tagName) {
    ContentValues contentValues = new ContentValues();
    contentValues.put("tag_name", tagName);
    db.insert("tag", null, contentValues);
}

// 删除标签
public void deleteTag(int tagId) {
    db.delete("tag", "tag_id = ?", new String[]{String.valueOf(tagId)});
}

// 查询标签
public List<String> searchTag(String keyword) {
    List<String> tagList = new ArrayList<>();
    Cursor cursor = db.query("tag", new String[]{"tag_name"}, "tag_name like ?",
            new String[]{"%" + keyword + "%"}, null, null, null);
    while (cursor.moveToNext()) {
        String tagName = cursor.getString(cursor.getColumnIndexOrThrow("tag_name"));
        tagList.add(tagName);
    }
    cursor.close();
    return tagList;
}

该示例中,首先创建了一个名为tag的数据表,包含tag_id和tag_name两个字段。然后定义了addTag、deleteTag和searchTag三个方法:

  • addTag方法用于添加标签,接受一个标签名作为参数,创建一个ContentValues对象设置tag_name字段的值,然后调用db.insert方法将其插入到tag表中。
  • deleteTag方法用于删除标签,接受一个标签ID作为参数,使用db.delete方法将其从tag表中删除。
  • searchTag方法用于查询标签,接受一个关键字作为参数,创建一个Cursor对象执行db.query方法,查询出所有tag_name包含关键字的行,然后将其添加到List对象中并返回。

以上就是从数据库中设置标签的示例代码,开发者可以根据需要进行修改和扩展,便于更好地管理应用程序中的数据。