· 8 years ago · Aug 07, 2018, 10:06 PM
1not getting :populating listview from SQLITE database in android
2package com.example;
3
4import android.content.Context;
5import android.database.sqlite.SQLiteDatabase;
6import android.database.sqlite.SQLiteOpenHelper;
7
8public class DatabaseHelper extends SQLiteOpenHelper{
9 public static final String DBNAME = "company.db";
10 public static final String ENAME="ename";
11 public static final String ADD="addr";
12 public static final String PNO="pno";
13 public static final String FA="fa";
14 public static final String tablename="company";
15
16
17 public DatabaseHelper(Context context) {
18 super(context, DBNAME, null, 1);
19 // TODO Auto-generated constructor stub
20 }
21@Override
22public void onCreate(SQLiteDatabase db) {
23 // TODO Auto-generated method stub
24 db.execSQL("CREATE TABLE company (_ID INTEGER PRIMARY KEY AUTOINCREMENT,ename TEXT,addr TEXT,pno TEXT,fa TEXT);");
25}
26@Override
27public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
28 // TODO Auto-generated method stub
29 db.execSQL("DROP IF TABLE EXISTS company");
30 onCreate(db);
31}
32}
33
34import java.util.ArrayList;
35
36import android.app.ListActivity;
37import android.database.Cursor;
38import android.database.sqlite.SQLiteDatabase;
39import android.database.sqlite.SQLiteException;
40import android.os.Bundle;
41import android.util.Log;
42import android.widget.ArrayAdapter;
43import android.widget.TextView;
44
45public class Text extends ListActivity {
46private ArrayList<String> results = new ArrayList<String>();
47private String tableName = DatabaseHelper.tablename;
48private SQLiteDatabase newDB;
49
50@Override
51 public void onCreate(Bundle savedInstanceState) {
52 super.onCreate(savedInstanceState);
53
54 openAndQueryDatabase();
55
56 displayResultList();
57}
58
59private void displayResultList() {
60 // TODO Auto-generated method stub
61 TextView tView = new TextView(this);
62 tView.setText("This data is retrieved from the database and only 4 " +
63 "of the results are displayed");
64 getListView().addHeaderView(tView);
65
66 setListAdapter(new ArrayAdapter<String>(this,
67 android.R.layout.simple_list_item_2, results));
68 getListView().setTextFilterEnabled(true);
69}
70
71private void openAndQueryDatabase() {
72 // TODO Auto-generated method stub
73 try {
74DatabaseHelper dbHelper = new DatabaseHelper(this.getApplicationContext());
75
76 newDB = dbHelper.getWritableDatabase();
77 Cursor c = newDB.rawQuery("SELECT ENAME, PNO FROM " +
78 tableName, null);
79
80 if (c != null ) {
81 if (c.moveToFirst()) {
82 do {
83 String ename = c.getString(c.getColumnIndex("ENAME"));
84 String addr = c.getString(c.getColumnIndex("PNO"));
85 results.add("Name: " + ename + ",Age: " + addr);
86 }while (c.moveToNext());
87 }
88 }
89 } catch (SQLiteException se ) {
90 Log.e(getClass().getSimpleName(), "Could not create or Open the database");
91 } finally {
92 if (newDB != null)
93 newDB.execSQL("DELETE FROM " + tableName);
94 newDB.close();
95 }
96
97}
98}