If you think the Android project android_app listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
Java Source Code
package models;
/*//fromwww.java2s.com
~ *******************************************************************************
~ Copyright (c) 2013-2014 Daniel Lin, Kamal Chaya, Sean Penney, and Daniel Chuang
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
~ *****************************************************************************
*/import java.util.LinkedList;
import java.util.List;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
publicclass MySQLiteHelper extends SQLiteOpenHelper {
// Teas table name
privatestaticfinal String TABLE_TEAS = "teas";
// Teas table column names
privatestaticfinal String KEY_FLAVOR = "flavor";
privatestaticfinal String KEY_TYPE = "type";
privatestaticfinal String KEY_SIZE = "size";
privatestaticfinal String KEY_PRICE = "price";
privatestaticfinal String KEY_MILK = "milk";
privatestaticfinal String KEY_NAME = "name";
privatestaticfinal String KEY_ID = "id";
// Database Version
privatestaticfinalint DATABASE_VERSION = 1;
// Database Name
privatestaticfinal String DATABASE_NAME = "TeaDB";
public MySQLiteHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
publicvoid onCreate(SQLiteDatabase db) {
// SQL statement to create tea data table
String CREATE_TEA_TABLE = "CREATE TABLE teas ( " + "flavor TEXT, "
+ "type TEXT, " + "size INTEGER, " + "price REAL, " + "milk TEXT, "
+ "name TEXT, " + "id INT )";
// create tea table
db.execSQL(CREATE_TEA_TABLE);
}
@Override
publicvoid onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// Drop older teas table if exists
db.execSQL("DROP TABLE IF EXISTS teas");
// create fresh teas table
this.onCreate(db);
}
publicvoid addTeaData(TeaData tea) {
// for logging
Log.d("addTea", tea.toString());
SQLiteDatabase db = this.getWritableDatabase();
// create ContentValues to add key "column"/value
ContentValues values = new ContentValues();
values.put(KEY_FLAVOR, tea.getFlavor());
values.put(KEY_TYPE, tea.getType());
values.put(KEY_SIZE, tea.getSize());
values.put(KEY_PRICE, tea.getPrice());
values.put(KEY_MILK, tea.getMilk());
values.put(KEY_NAME, tea.getName());
values.put(KEY_ID, tea.getId());
// insert
db.insert(TABLE_TEAS, null, values);
db.close();
}
public List<TeaData> getAllTeas() {
List<TeaData> teas = new LinkedList<TeaData>();
// build the query
String query = "SELECT * FROM " + TABLE_TEAS;
// get reference to writable DB
SQLiteDatabase db = this.getWritableDatabase();
Cursor cursor = db.rawQuery(query, null);
// go through each row and add to list
TeaData tea = null;
if (cursor.moveToFirst()) {
do {
tea = new TeaData();
tea.setFlavor(cursor.getString(0));
tea.setType(cursor.getString(1));
tea.setSize(Integer.parseInt(cursor.getString(2)));
tea.setPrice(Double.parseDouble(cursor.getString(3)));
tea.setMilk(cursor.getString(4));
tea.setName(cursor.getString(5));
tea.setId(Integer.parseInt(cursor.getString(6)));
// add tea to teas
teas.add(tea);
} while (cursor.moveToNext());
}
Log.d("getAllTeas()", teas.toString());
return teas;
}
// delete single tea
publicvoid deleteTea(TeaData t) {
SQLiteDatabase db = this.getWritableDatabase();
// delete tea
db.delete(TABLE_TEAS, KEY_ID+" = ?", new String[] {String.valueOf(t.getId())});
Log.d("deleteTea()", t.toString());
db.close();
}
publicvoid deleteAllTeas() {
SQLiteDatabase db = this.getWritableDatabase();
onUpgrade(db, 1, 1);
}
}