製品名、製品価格、製品カウンターのデータベースがあります。商品名はユニークで、商品価格は新しい値が入力されるたびに置き換えられ、問題は商品カウンターです。そのデフォルト値は1
で、新しい製品が入力されると、彼の値は 1 に設定されます。製品名が競合するたびに値を増やす必要がありCheese
ます2
。私がする必要があるのは、競合があるとき、その値に1を追加することです。後でこれが必要になるので、このようにしたいと思います。入力した値を、アプリに実装する予定の他のもののテーブル値に追加する必要があります。
どうすればこれを達成できますか? contentvalues
sqlite 構文 ( ) ではなく、挿入の方法を使用して、現在行っている方法でそれを続けたいと思いINSERT,SELECT,etc
ます。それは可能ですか? Cuz 私は sqlite 構文で絶対 0 です。また、データベースに挿入するために他のアクティビティで呼び出すことができるメソッドが必要です (のようにinsertCountry(Japan,10)
)
public class SQLiteCountryAssistant extends SQLiteOpenHelper {
private static final String DB_NAME = "usingsqlite.db";
private static final int DB_VERSION_NUMBER = 1;
private static final String DB_TABLE_NAME = "countries";
private static final String DB_COLUMN_1_NAME = "country_name";
private static final String DB_COLUMN_2_NAME = "country_price";
private static final String DB_COLUMN_3_NAME = "country_counter";
private static final String DB_CREATE_SCRIPT = "create table "
+ DB_TABLE_NAME
+ " (_id integer primary key autoincrement, country_name text UNIQUE ON CONFLICT REPLACE,country_price text,country_counter integer default '1' );)";
そして、これは私が挿入する方法です:
public void insertCountry(String countryName, String countryPrice) {
sqliteDBInstance.execSQL("INSERT INTO " + DB_TABLE_NAME
+ "(country_name, country_price) VALUES('" + countryName
+ "', '" + countryPrice + "')");
}