/* Bryan Database */ package bryan.database; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.SQLException; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import java.util.ArrayList; public class DatabaseConnector { private static final String DB_NAME = "citc_faculty.db"; private static final int DB_VERSION = 1; private final String TABLE_NAME = "faculty"; private DatabaseOpenHelper dbHelper; private SQLiteDatabase myDB; // Database connector for current context public DatabaseConnector(Context c) { dbHelper = new DatabaseOpenHelper(c, DB_NAME, null, DB_VERSION); } // Open the database connection public void open() throws SQLException { myDB = dbHelper.getWritableDatabase(); } // Close database connection public void close() { if (myDB != null) myDB.close(); } public void insertRecord(String _name, String _email) { ContentValues cv = new ContentValues(); // First argument to put method is table column name, and the second is value to be inserted cv.put("name", _name); cv.put("email", _email); // Open database this.open(); // Insert record myDB.insert(TABLE_NAME, null, cv); } // Method to create and return an array list of records from faculty table public ArrayList<String> getFacultyRecords() { ArrayList<String> facultyList = new ArrayList<>(); // Create a query to select all faculity records String selectQuery = "SELECT * FROM " + TABLE_NAME; // Open Database this.open(); Cursor selectCursor = myDB.rawQuery(selectQuery, null); // Interate over cursor to fetch faculty records into array list for (selectCursor.moveToFirst(); !selectCursor.isAfterLast(); selectCursor.moveToNext()) { String facultyRecord = selectCursor.getString(0) + "\t" + selectCursor.getString(1) + "\t" + selectCursor.getString(2); facultyList.add(facultyRecord); } // Return return facultyList; } private class DatabaseOpenHelper extends SQLiteOpenHelper { public DatabaseOpenHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) { super (context, name, factory, version); } @Override public void onCreate(SQLiteDatabase db) { // Create faculty table String createTable = "CREATE TABLE " + TABLE_NAME + " (fid integer primary key autoincrement, name text, email text);"; // Execute query db.execSQL(createTable); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { } } }