· 8 years ago · Jan 05, 2018, 04:36 AM
1public class DatabaseHelper extends SQLiteOpenHelper {
2
3 // Table Name
4 public static final String TABLE_NAME = "ITEM_TABLE";
5
6 // Table columns
7 public static final String ID = "id";
8 public static final String NAME = "name";
9 public static final String VALUE = "value";
10
11 // Database Information
12 static final String DB_NAME = "ITEM.DB";
13
14 // database version
15 static final int DB_VERSION = 1;
16
17 public DatabaseHelper(Context context) {
18 super(context, DB_NAME, null, DB_VERSION);
19 }
20
21
22 // CREATE TABLE WITH SCRIPT
23 @Override
24 public void onCreate(SQLiteDatabase db) {
25 String SCRIPT_CREATE_TABLE = String.format("CREATE TABLE %s (%s INTEGER PRIMARY KEY AUTOINCREMENT, %s TEXT NOT NULL, %s TEXT)", TABLE_NAME, ID, NAME, VALUE);
26 db.execSQL(SCRIPT_CREATE_TABLE);
27 }
28
29 // UPGRADE TABLE
30 @Override
31 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
32 db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
33 onCreate(db);
34 }
35}
36
37public class DatabaseManagerCRUD_Item {
38
39 private DatabaseHelper dbHelper;
40 private Context context;
41 private SQLiteDatabase database;
42
43 public DatabaseManagerCRUD_Item(Context c) {
44 context = c;
45 dbHelper = new DatabaseHelper(context);
46 }
47
48 public DatabaseManagerCRUD_Item open() throws SQLException {
49 dbHelper = new DatabaseHelper(context);
50 database = dbHelper.getWritableDatabase();
51 return this;
52 }
53
54 public void close() {
55 dbHelper.close();
56 }
57
58 //Insert
59 public void insertRow(Item item) {
60 ContentValues contentValue = new ContentValues();
61
62 contentValue.put(dbHelper.NAME, item.getItemName());
63 contentValue.put(dbHelper.VALUE, item.getItemValue());
64
65 database.insert(dbHelper.TABLE_NAME, null, contentValue);
66 }
67
68 // Select all data & bring to List
69 public ArrayList<Item> getItemList() {
70
71 SQLiteDatabase db = dbHelper.getReadableDatabase();
72 String selectQuery = String.format("SELECT %s, %s, %s FROM %s", dbHelper.ID, dbHelper.NAME, dbHelper.VALUE, dbHelper.TABLE_NAME);
73
74 ArrayList<Item> studentList = new ArrayList<Item>();
75
76 Cursor cursor = db.rawQuery(selectQuery, null); //-->Error here
77
78 cursor.moveToFirst();
79 while (cursor.isAfterLast() == false) {
80 String name = cursor.getString(cursor.getColumnIndex(dbHelper.NAME));
81 Integer value = cursor.getInt(cursor.getColumnIndex(dbHelper.VALUE));
82 studentList.add(new Item(name, value));
83 }
84
85 cursor.close();
86 db.close();
87 return studentList;
88 }
89}
90
91dbManager.insertRow(new Item("A",20));
92dbManager.insertRow(new Item("B",21));
93dbManager.insertRow(new Item("C",22));
94
95//get list
96ArrayList<Item> lstItem = new ArrayList<>();
97lstItem =dbManager.getItemList(); ///___> Error??