Skip to content

Instantly share code, notes, and snippets.

@emreedemir
Created December 19, 2019 12:14
Show Gist options
  • Save emreedemir/992a1c122e615efcb7a5ad6a86eb7a76 to your computer and use it in GitHub Desktop.
Save emreedemir/992a1c122e615efcb7a5ad6a86eb7a76 to your computer and use it in GitHub Desktop.
package com.emreedemir.bookapplication;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import androidx.annotation.Nullable;
import java.util.ArrayList;
import java.util.List;
public class DatabaseHelper extends SQLiteOpenHelper
{
public DatabaseHelper(@Nullable Context context, @Nullable String name, @Nullable SQLiteDatabase.CursorFactory factory, int version) {
super(context, name, factory, version);
}
@Override
public void onCreate(SQLiteDatabase sqLiteDatabase)
{
String CREATE_TABLE = "CREATE TABLE " + BookDatabaseConstant.BOOK_DATABASE_NAME + "("
+ BookDatabaseConstant.CONTACTS_COLUMN_ID
+ " INTEGER PRIMARY KEY AUTOINCREMENT,"
+ BookDatabaseConstant.CONTACTS_COLUMN_NAME+ " TEXT,"
+ BookDatabaseConstant.CONTACTS_COLUMN_SURNAME + " TEXT,"
+ BookDatabaseConstant.CONTACTS_COLUMN_PHONE + " TEXT" +
")";
sqLiteDatabase.execSQL(CREATE_TABLE);
}
public void addPersonToDatabase(Person person)
{
SQLiteDatabase sqLiteDatabase =this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(BookDatabaseConstant.CONTACTS_COLUMN_NAME,person.getName());
values.put(BookDatabaseConstant.CONTACTS_COLUMN_SURNAME,person.getSurname());
values.put(BookDatabaseConstant.CONTACTS_COLUMN_PHONE,person.getTelephoneNumber());
sqLiteDatabase.insert(BookDatabaseConstant.CONTACTS_TABLE_NAME,null,values);
sqLiteDatabase.close();
}
public void deletePersonFromDatabase(Person person)
{
SQLiteDatabase database=this.getWritableDatabase();
database.execSQL("DELETE FROM " +BookDatabaseConstant.CONTACTS_TABLE_NAME+" WHERE "+BookDatabaseConstant.CONTACTS_COLUMN_NAME+"='"+person.getName()+"'and'"+ BookDatabaseConstant.CONTACTS_COLUMN_SURNAME +"='"+person.getSurname()+"'and'"+BookDatabaseConstant.CONTACTS_COLUMN_PHONE+"='"+person.getTelephoneNumber());
database.close();
}
public List<Person> getAllPersonFromDatabase()
{
List<Person> personList = new ArrayList<>();
String selectQuery = "SELECT * FROM " +BookDatabaseConstant.CONTACTS_TABLE_NAME + " ORDER BY " +
BookDatabaseConstant.COLUMN_TIMESTAMP + " DESC";
SQLiteDatabase database =this.getWritableDatabase();
Cursor cursor = database.rawQuery(selectQuery,null);
if(cursor.moveToNext())
{
do {
Person person =
new Person(
cursor.getString(cursor.getColumnIndex(BookDatabaseConstant.CONTACTS_COLUMN_NAME)),
cursor.getString(cursor.getColumnIndex(BookDatabaseConstant.CONTACTS_COLUMN_SURNAME)),
cursor.getString(cursor.getColumnIndex(BookDatabaseConstant.CONTACTS_COLUMN_PHONE)));
personList.add(person);
}while (cursor.moveToNext());
}
return personList;
}
@Override
public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1)
{
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment