Sqlite DataBase connectivity with android studio
5 min readApr 12, 2024
MainActivity.java
package com.example.databasesqlite;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu){
getMenuInflater().inflate(R.menu.menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item){
int id=item.getItemId();
if(id==R.id.store){
Intent intent = new Intent(MainActivity.this, StoreDetails.class);
startActivity(intent);
return true;
//Toast.makeText(getApplicationContext(),"About Us",Toast.LENGTH_LONG).show();
}
else if(id==R.id.grade){
Intent intent = new Intent(MainActivity.this, GradeAssign.class);
startActivity(intent);
return true;
}
else if(id==R.id.display){
Intent intent = new Intent(MainActivity.this, DisplayInfo.class);
startActivity(intent);
return true;
}
else if(id==R.id.close){
Toast.makeText(this,"No change",Toast.LENGTH_SHORT).show();
}
return true;
}
}DBHelper.java
package com.example.databasesqlite;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import java.util.ArrayList;
public class DBHelper extends SQLiteOpenHelper{
public DBHelper(Context context) {
super(context, "Studentdata.db", null, 1);
}
@Override
public void onCreate(SQLiteDatabase DB) {
DB.execSQL("create Table StudentDetails(name TEXT, regno TEXT primary key, subject1 TEXT, subject2 TEXT, subject3 TEXT)");
}
@Override
public void onUpgrade(SQLiteDatabase DB, int i, int i1) {
DB.execSQL("drop Table if exists Studentdetails");
}
public Boolean insertdata(String name, String regno, String m1, String m2, String m3)
{
SQLiteDatabase DB = this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put("name", name);
contentValues.put("regno", regno);
contentValues.put("subject1", m1);
contentValues.put("subject2", m2);
contentValues.put("subject3", m3);
long result=DB.insert("Studentdetails", null, contentValues);
if(result==-1){
return false;
}else{
return true;
}
}
public Boolean updatedata(String name, String regno, String m1, String m2, String m3)
{
SQLiteDatabase DB = this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put("regno", regno);
contentValues.put("subject1", m1);
contentValues.put("subject2", m2);
contentValues.put("subject3", m3);
Cursor cursor = DB.rawQuery("Select * from Studentdetails where name = ?", new String[]{name});
if (cursor.getCount() > 0) {
long result = DB.update("Studentdetails", contentValues, "name=?", new String[]{name});
if (result == -1) {
return false;
} else {
return true;
}
} else {
return false;
}
}
public Boolean deletedata (String name)
{
SQLiteDatabase DB = this.getWritableDatabase();
Cursor cursor = DB.rawQuery("Select * from Studentdetails where name = ?", new String[]{name});
if (cursor.getCount() > 0) {
long result = DB.delete("Studentdetails", "name=?", new String[]{name});
if (result == -1) {
return false;
} else {
return true;
}
} else {
return false;
}
}
public Cursor fetchdata (String name)
{
SQLiteDatabase DB = this.getWritableDatabase();
Cursor cursor = DB.rawQuery("Select * from Studentdetails where regno = ?", new String[]{name});
//if (cursor.getCount() > 0) {
// return cursor;
// } else {
// }s
return cursor;
}
public Cursor getdata ()
{
SQLiteDatabase DB = this.getWritableDatabase();
Cursor cursor = DB.rawQuery("Select * from StudentDetails", null);
return cursor;
}
public ArrayList<String> getUsers(){
ArrayList<String> list = new ArrayList<>();
SQLiteDatabase DB = this.getReadableDatabase();
Cursor cursor = DB.rawQuery("Select * from Studentdetails", null);
while(cursor.moveToNext()){
list.add("Name: "+ cursor.getString(0)+"\t");
list.add("Contact: "+ cursor.getString(1)+"\t");
list.add("Marks1: "+ cursor.getString(2)+"\t");
list.add("Marks2: "+ cursor.getString(3)+"\t");
list.add("Marks3: "+ cursor.getString(4)+"\t");
}
return list;
}
}StoreDetails.java
package com.example.databasesqlite;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class StoreDetails extends AppCompatActivity {
EditText name, regno, m1, m2, m3;
Button store;
DBHelper DB;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_store_details);
name = findViewById(R.id.name);
regno = findViewById(R.id.regno);
m1 = findViewById(R.id.marks1);
m2 = findViewById(R.id.marks2);
m3 = findViewById(R.id.marks3);
store = findViewById(R.id.store_button);
DB = new DBHelper(this);
store.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String nameTXT = name.getText().toString();
String regnoTXT = regno.getText().toString();
String m1TXT = m1.getText().toString();
String m2TXT = m2.getText().toString();
String m3TXT = m3.getText().toString();
Boolean checkinsertdata = DB.insertdata(nameTXT, regnoTXT, m1TXT, m2TXT, m3TXT);
if(checkinsertdata==true)
Toast.makeText(StoreDetails.this, "New Entry Inserted", Toast.LENGTH_SHORT).show();
else
Toast.makeText(StoreDetails.this, "New Entry Not Inserted", Toast.LENGTH_SHORT).show();
}
});
}
}activity_store_details.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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"
tools:context=".StoreDetails">
<TextView
android:id="@+id/texttitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="600dp"
android:text="Please enter the details below"
android:textSize="24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
<EditText
android:id="@+id/name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="500dp"
android:hint="Name"
android:textSize="24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<EditText
android:id="@+id/regno"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="400dp"
android:hint="RegNo"
android:inputType="number"
android:textSize="24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<EditText
android:id="@+id/marks1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="300dp"
android:hint="Subject 1 Marks"
android:inputType="number"
android:textSize="24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<EditText
android:id="@+id/marks2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="200dp"
android:hint="Subject 2 Marks"
android:inputType="number"
android:textSize="24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<EditText
android:id="@+id/marks3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="100dp"
android:hint="Subject 3 Marks"
android:inputType="number"
android:textSize="24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Button
android:id="@+id/store_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="STORE"
android:textSize="24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>GradeAssign.java
package com.example.databasesqlite;Get Halaharvisrinithya’s stories in your inbox
Join Medium for free to get updates from this writer.
import androidx.appcompat.app.AppCompatActivity;
import android.database.Cursor;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class GradeAssign extends AppCompatActivity {
EditText regno;
Button getgrade;
DBHelper DB;
TextView m11, m22, m33;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_grade_assign);
regno=findViewById((R.id.regnoedit));
DB = new DBHelper(this);
getgrade=findViewById((R.id.grade_button));
m11=findViewById(R.id.edit1);
m22=findViewById(R.id.edit2);
m33=findViewById(R.id.edit3);
getgrade.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String regnoTXT = regno.getText().toString();
Cursor cursor = DB.fetchdata(regnoTXT);
if (cursor.moveToFirst()) {
int m1 = Integer.parseInt(cursor.getString(2));
int m2 = Integer.parseInt(cursor.getString(3));
int m3 = Integer.parseInt(cursor.getString(4));
if (m1 > 18) {
m11.setText("A");
} else {
m11.setText("B");
}
if (m2 > 18) {
m22.setText("A");
} else {
m22.setText("B");
}
if (m3 > 18) {
m33.setText("A");
} else {
m33.setText("B");
}
}
else{
Toast.makeText(GradeAssign.this, "No data found for the given registration number", Toast.LENGTH_SHORT).show();
}
//if(checkinsertdata==true)
// Toast.makeText(StoreDetails.this, "New Entry Inserted", Toast.LENGTH_SHORT).show();
//else
// Toast.makeText(StoreDetails.this, "New Entry Not Inserted", Toast.LENGTH_SHORT).show();
}
});
}
}
activity_grade_assign.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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"
tools:context=".GradeAssign">
<TextView
android:id="@+id/textitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="600dp"
android:text="Please enter name to get grade"
android:textSize="24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
<EditText
android:id="@+id/regnoedit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="500dp"
android:hint="Regno"
android:textSize="24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Button
android:id="@+id/grade_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="400dp"
android:text="GET GRADE"
android:textSize="24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/text1"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:layout_marginEnd="200dp"
android:layout_marginBottom="300dp"
android:text="Subject 1"
android:textSize="24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/text2"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:layout_marginEnd="200dp"
android:layout_marginBottom="200dp"
android:text="Subject 2"
android:textSize="24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/text3"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:layout_marginEnd="200dp"
android:layout_marginBottom="100dp"
android:text="Subject 3"
android:textSize="24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/edit1"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:layout_marginStart="200dp"
android:layout_marginBottom="300dp"
android:text="aaaaaaa"
android:textSize="24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/edit2"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:layout_marginStart="200dp"
android:layout_marginBottom="200dp"
android:text="bbbbbb"
android:textSize="24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/edit3"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:layout_marginStart="200dp"
android:layout_marginBottom="100dp"
android:text="ccccc"
android:textSize="24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>DisplayInfo.java
package com.example.databasesqlite;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import java.util.ArrayList;
public class DisplayInfo extends AppCompatActivity {
ListView lv;
DBHelper db;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_display_info);
lv = findViewById(R.id.listview);
db = new DBHelper(this);
ArrayList<String> list = db.getUsers();
ArrayAdapter<String> adapter = new ArrayAdapter<>(this, R.layout.list_item, list);
lv.setAdapter(adapter);
}
}activity_display_info.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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"
tools:context=".DisplayInfo">
<ListView
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginStart="1dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_marginBottom="1dp"
android:id="@+id/listview"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>list_item.xml
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:textSize="24dp">
</TextView>menu.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="store"
android:id="@+id/store"/>
<item android:id="@+id/grade"
android:title="grade"/>
<item
android:title="display"
android:id="@+id/display" />
<item android:id="@+id/close"
android:title="close" />
</menu>




