5

次のデータベーステーブルオブジェクトがあります。

public class Goal {
    @DatabaseField(generatedId = true)
    private int id;
    @DatabaseField
    private String goal_title;
    @DatabaseField
    private String goal_desc;
    @DatabaseField
    private String goal_why;
    ...
}

このテーブルにいくつかの行を追加しました。次に、このテーブルの行のすべての列を更新するクエリを作成します。ORMのドキュメントを見たことがありますが、このクエリの書き方がわかりませんでした。このクエリの書き方を教えてください。

4

1 に答える 1

18

このテーブルにいくつかの行を追加しました。次に、このテーブルの行のすべての列を更新するクエリを作成します。

私はあなたがRTFMする必要があると思います。私はORMLiteのドキュメントに長い時間を費やしてきましたが、それはかなりうまくカバーUpdateBuilderされていると思います。より具体的な質問をしてください。そうでない場合は、詳細を追加できます。

ドキュメントから引用するには:

DAOを使用して、カスタムのUPDATEおよびDELETEステートメントを作成することもできます。更新ステートメントは、WHEREパターンに一致するテーブルの行の特定のフィールドを変更するために使用されます。または、where()がない場合はすべての行を更新します。Deleteステートメントは、WHEREパターンに一致する行をテーブルから削除するために使用されます。where()がない場合はすべての行を削除します。

サンプルコードを微調整してGoalオブジェクトを使用するには:

UpdateBuilder<Goal, Integer> updateBuilder = goalDao.updateBuilder();
// update the goal_title and goal_why fields
updateBuilder.updateColumnValue("goal_title", "some other title");
updateBuilder.updateColumnValue("goal_why", "some other why");
// but only update the rows where the description is some value
updateBuilder.where().eq("goal_desc", "unknown description");
// actually perform the update
updateBuilder.update();

お役に立てれば。

于 2012-06-15T14:35:21.397 に答える