title: Accessing Database created in one activity in another Activity
body: <p>For some odd reason I can't seem pull off information off my database created in one activity in another. I had the same issues with a static arraylist. Thought it would be much easier using a database but it keeps crashing. My DB instance is always null in the next activity even though I called it before pulling off any information. Here is my function in fragment class </p>
  
  <pre><code>private void populateListView(){
      Cursor cursor = myDatabase.getAllData();
      String[] fromfieldNames = new String[]{StudentDBOpenHelper.KEY_ID,StudentDBOpenHelper.ITEM_NAME_COLUMN};
      int[] toViewIDs = new int[] {R.id.textView_itemNumber,R.id.textView_itemName};
      SimpleCursorAdapter myCursorAdapter;
      myCursorAdapter = new SimpleCursorAdapter(getActivity().getBaseContext(),
              R.layout.individualview,cursor,fromfieldNames,toViewIDs,0);
      ListView myList = (ListView) getActivity().findViewById(R.id.courseListXML);
      myList.setAdapter(myCursorAdapter);
  }//USed to populate list view
  </code></pre>
  
  <p>The function itself is placed outside of onCreateView and onViewCreated but called in onViewCreated. </p>
  
  <p>Here is my database helper class</p>
  
  <pre><code>public class StudentDBOpenHelper extends SQLiteOpenHelper {
  
  public static final String KEY_ID = "_id";
  
  public static final String ITEM_NAME_COLUMN = "ITEM_NAME_COLUMN";
  
  public static final String ITEM_CATEGORY_COLUMN = "ITEM_CATEGORY_COLUMN";
  
  public static final String ITEM_GRADE_COLUMN = "ITEM_GRADE_COLUMN";
  
  
  public static final String DATABASE_NAME = "myItemDatabase.db";
  public static final String DATABASE_TABLE = "ItemInfo";
  public static final int DATABASE_VERSION = 1;
  
  private static final String DATABASE_CREATE ="create table " + DATABASE_TABLE + " (" +
          KEY_ID + " integer primary key autoincrement, " +
          ITEM_NAME_COLUMN + " text, " +
          ITEM_CATEGORY_COLUMN + " text, "
          +ITEM_GRADE_COLUMN + " integer);";
  
  
  
  
  /*
  public StudentDBOpenHelper(Context context,String name,
                             SQLiteDatabase.CursorFactory factory,int version)   {
   super(context,name,factory,version);
  
  
  
  }
  */
  
  public StudentDBOpenHelper(Context context){
      super(context, DATABASE_NAME, null, DATABASE_VERSION);
  
  
  }
  
  
  @Override
  public void onCreate(SQLiteDatabase db) {
  
      db.execSQL((DATABASE_CREATE));
  }
  
  @Override
  public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
  
      Log.w("TaskDBAdapter", "Upgrading from version" +
              oldVersion + ",which will destroy all old data");
  
      db.execSQL("DROP TABLE IF EXISTS" + DATABASE_TABLE);
      onCreate(db);
  
  }
  
  public boolean insertData(String firstname,String lastname,String credits){
  
      SQLiteDatabase db = this.getWritableDatabase();
  
      ContentValues contentValues = new ContentValues(); //instance of class
      contentValues.put(ITEM_NAME_COLUMN,firstname);//2 parameters(Column name in which you
      //you want to insert data
      // and second is the value itself
      contentValues.put(ITEM_CATEGORY_COLUMN, lastname);
      contentValues.put(ITEM_GRADE_COLUMN, credits);
  
      long result = db.insert(DATABASE_TABLE,null,contentValues);
      if(result == -1) {
          return false;
      }
      else {
  
          return true;
      }
  }//ends insertData functin
  
  public Cursor getAllData(){
      SQLiteDatabase db = this.getWritableDatabase();
      Cursor result = db.rawQuery("select * from " + DATABASE_TABLE,null);
      return result;
  }//ends cursor
  
  
  public boolean updateData(String id,String firstname,String lastname,String credits){
      SQLiteDatabase db = this.getWritableDatabase();
      ContentValues contentValues = new ContentValues();
      contentValues.put(KEY_ID,id);
      contentValues.put(ITEM_NAME_COLUMN,firstname);//2 parameters(Column name in which you
      //you want to insert data
      // and second is the value itself
      contentValues.put(ITEM_CATEGORY_COLUMN, lastname);
      contentValues.put(ITEM_GRADE_COLUMN, credits);
  
      db.update(DATABASE_TABLE,contentValues,"_id = ?",new String[]{id});
  
      return true;
  }
  
  public Integer deleteData(String id){
      SQLiteDatabase db = this.getWritableDatabase();
      return db.delete(DATABASE_TABLE,"_id = ?",new String[] {id});
  }
  }
  </code></pre>