2016-09-22 8 views
-3

"売り切れ"の列にすべての値を追加してtextviewに表示したい、私はアンドロイドのために新規です。アンドロイドスタジオ(sqliteデータベース)の列にあるすべての値の合計

SQLiteOpenHelper.java

パブリッククラスSQLiteHelperはTextViewには、存在する場合、{

static String DATABASE_NAME="DemoDataBase"; 

public static final String KEY_ID="id"; 

public static final String TABLE_NAME="demoTable"; 

public static final String KEY_Name="name"; 

public static final String KEY_Sold="sold"; 

public static final String KEY_Subject="subject"; 

public SQLiteHelper(Context context) { 

    super(context, DATABASE_NAME, null, 1); 

} 

@Override 
public void onCreate(SQLiteDatabase database) { 

    String CREATE_TABLE="CREATE TABLE "+TABLE_NAME+" ("+KEY_ID+" INTEGER PRIMARY KEY, "+KEY_Name+" VARCHAR, "+KEY_Sold+" VARCHAR, "+KEY_Subject+" VARCHAR)"; 
    database.execSQL(CREATE_TABLE); 

} 

@Override 
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 
    db.execSQL("DROP TABLE IF EXISTS "+TABLE_NAME); 
    onCreate(db); 

} 

}

答えて

0

あなたの活動に続いて、この

static String DATABASE_NAME="DemoDataBase"; 

public static final String KEY_ID="id"; 

public static final String TABLE_NAME="demoTable"; 

public static final String KEY_Name="name"; 

public static final String KEY_Sold="sold"; 

public static final String KEY_Subject="subject"; 

public SQLiteHelper(Context context) { 

super(context, DATABASE_NAME, null, 1); 

} 

@Override 
public void onCreate(SQLiteDatabase database) { 

String CREATE_TABLE="CREATE TABLE "+TABLE_NAME+" ("+KEY_ID+" INTEGER PRIMARY KEY, "+KEY_Name+" VARCHAR, "+KEY_Sold+" VARCHAR, "+KEY_Subject+" VARCHAR)"; 
database.execSQL(CREATE_TABLE); 

} 

@Override 
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 
db.execSQL("DROP TABLE IF EXISTS "+TABLE_NAME); 
onCreate(db); 

} 

public int getSold(){ 
int sold = 0; 
SQLiteDatabase database = this.getReadableDatabase(); 
Cursor cursor = database.query(TABLE_NAME,null,null,null,null,null,null); 
if(cursor.moveToFirst()){ 
    while(!cursor.isAfterLast()){ 
     sold += cursor.getString(cursor.getColumnIndex(KEY_Sold)); 
     cursor.moveToNext(); 
    } 
    cursor.close(); 
    } 
database.close(); 
return sold; 
} 

を試しSQLiteOpenHelperを拡張

String sold_count = getSold().toString(); 
myTextView.setText(sold_count); 

希望これは、あなたがこのような何かを意味

3

に動作しますか?

public String Sum() { 
     String[] columns = new String[] {"SUM("+KEY_CONTENT2+")" }; 
     Cursor cursor = sqLiteDatabase.query(MYDATABASE_TABLE, columns,null,null,null,null,null); 
     String result = ""; 
     int index_SUM = cursor.getColumnIndex("SUM("+KEY_CONTENT2+")"); 
     for (cursor.moveToFirst(); !(cursor.isAfterLast()); cursor.moveToNext()) { 
      result = result + cursor.getString(index_SUM) + "\n"; 
     } 
     return result; 
} 
関連する問題