SQ Lite Database in Android Studio - CRUD Operation - (Task 1) - AndroidCode





STEP 1 : Create DataBase





public class MyDatabase extends SQLiteOpenHelper {

private Context context;

public MyDatabase(@Nullable Context context) {
super(context, "mydb.db", null, 1);
this.context = context;
}

@Override
public void onCreate(SQLiteDatabase db) {
String query = "create table student(id integer primary key autoincrement, name text, surname text)";
db.execSQL(query);
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
String query = "drop table if exists student";
onCreate(db);
db.execSQL(query);
}

public boolean insertData(String data_name, String data_surname) {
SQLiteDatabase sqLiteDatabase = getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put("name", data_name);
contentValues.put("surname", data_surname);
long result = sqLiteDatabase.insert("student", null, contentValues);

Log.e("student", "insertData: " + result);

if (result == -1) {
return false;
} else {
return true;
}
}


public boolean updateData(String data_id, String data_name, String data_surname) {
SQLiteDatabase sqLiteDatabase = getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put("id", data_id);
contentValues.put("name", data_name);
contentValues.put("surname", data_surname);
long result = sqLiteDatabase.update("student", contentValues, "id=?", new String[]{data_id});

Log.e("student", "updateData: " + result);

if (result == 1) {
return true;
} else {
return false;
}
}


public boolean deleteData(String data_id) {
SQLiteDatabase sqLiteDatabase = getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put("id", data_id);
long result = sqLiteDatabase.delete("student", "id=?", new String[]{data_id});

Log.e("student", "deleteData: " + result);

if (result == 1) {
return true;
} else {
return false;
}

}

public Cursor getData() {
SQLiteDatabase sqLiteDatabase = getReadableDatabase();
String query = "select * from student";
Cursor cursor = sqLiteDatabase.rawQuery(query, null);
return cursor;
}
}






STEP 1 : Create XML 






<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">

<EditText
android:id="@+id/et_id"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter Id (only for update)" />

<EditText
android:id="@+id/et_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter Name" />

<EditText
android:id="@+id/et_surname"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter Surname" />

<Button
android:id="@+id/btn_insert"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="insert"
android:layout_gravity="center"/>

<Button
android:id="@+id/btn_update"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="update"
android:layout_gravity="center"/>

<Button
android:id="@+id/btn_delete"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="delete"
android:layout_gravity="center"/>

<Button
android:id="@+id/btn_show"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="show"
android:layout_gravity="center"/>

</LinearLayout>







STEP 1 : Create JAVA





public class MainActivity extends AppCompatActivity {

private EditText et_id, et_name, et_surname;
private Button btn_insert, btn_update, btn_delete, btn_show;
private MyDatabase myDatabase;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

et_id = findViewById(R.id.et_id);
et_name = findViewById(R.id.et_name);
et_surname = findViewById(R.id.et_surname);
btn_insert = findViewById(R.id.btn_insert);
btn_update = findViewById(R.id.btn_update);
btn_delete = findViewById(R.id.btn_delete);
btn_show = findViewById(R.id.btn_show);

myDatabase = new MyDatabase(this);

btn_insert.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
boolean isInserted = myDatabase.insertData(et_name.getText().toString().trim(), et_surname.getText().toString().trim());

if (isInserted) {
Toast.makeText(MainActivity.this, "Data inserted", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(MainActivity.this, "Data not inserted!", Toast.LENGTH_SHORT).show();
}
}
});


btn_update.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
boolean isUpdated = myDatabase.updateData(et_id.getText().toString().trim(), et_name.getText().toString().trim(), et_surname.getText().toString().trim());

if (isUpdated) {
Toast.makeText(MainActivity.this, "Data updated", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(MainActivity.this, "Data not updated!", Toast.LENGTH_SHORT).show();
}
}
});


btn_delete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
boolean isDeleted = myDatabase.deleteData(et_id.getText().toString().trim());

if (isDeleted) {
Toast.makeText(MainActivity.this, "Data deleted", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(MainActivity.this, "Data not deleted!", Toast.LENGTH_SHORT).show();
}
}
});


btn_show.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Cursor cursor = myDatabase.getData();
if (cursor.getCount() == 0) {
Toast.makeText(MainActivity.this, "No data available", Toast.LENGTH_SHORT).show();
} else {

StringBuffer buffer = new StringBuffer();
while (cursor.moveToNext()) {
buffer.append("id: " + cursor.getString(0) + "\n");
buffer.append("name: " + cursor.getString(1) + "\n");
buffer.append("surname: " + cursor.getString(2) + "\n");

Log.e("student", "show: " + buffer.toString());
}

Toast.makeText(MainActivity.this, "" + buffer.toString(), Toast.LENGTH_SHORT).show();
}

}
});
}
}