Created
December 19, 2019 12:14
-
-
Save emreedemir/992a1c122e615efcb7a5ad6a86eb7a76 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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