Sqlite Database : Retrieve Data
DBHelper.java
public class DBHelper extends SQLiteOpenHelper {
public static String DBNAME = "Student.db";
Context activity;
public DBHelper(@Nullable Context context) {
super(context, DBNAME, null, 1);
activity = context;
}
@Override
public void onCreate(SQLiteDatabase db) {
String query = "CREATE TABLE std (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, mobile TEXT, email TEXT)";
db.execSQL(query);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
// CREATE NEW METHODE
public void InsertData(String name, String mobile, String email) {
SQLiteDatabase db = getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put("name", name);
contentValues.put("mobile", mobile);
contentValues.put("email", email);
long res = db.insert("std", null, contentValues);
Toast.makeText(activity, "" + res, Toast.LENGTH_SHORT).show();
}
public List<ModelData> ReadData() {
List<ModelData> list=new ArrayList<>();
SQLiteDatabase db=getReadableDatabase();
String query="SELECT * FROM std";
Cursor cursor = db.rawQuery(query,null);
if(cursor.moveToFirst())
{
do {
@SuppressLint("Range") String id = cursor.getString(cursor.getColumnIndex("id"));
@SuppressLint("Range") String name =cursor.getString(cursor.getColumnIndex("name"));
@SuppressLint("Range") String email =cursor.getString(cursor.getColumnIndex("email"));
@SuppressLint("Range") String mobile =cursor.getString(cursor.getColumnIndex("mobile"));
ModelData modelData=new ModelData();
modelData.setId(id);
modelData.setName(name);
modelData.setEmail(email);
modelData.setMobile(mobile);
list.add(modelData);
Toast.makeText(activity, id+" "+name+" "+email+" "+mobile, Toast.LENGTH_SHORT).show();
Log.e("TAG", "ReadData: "+id+" "+name+" "+email+" "+mobile );
}while (cursor.moveToNext());
}
return list;
}
}
mainactivity.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:gravity="center_horizontal"
android:orientation="vertical"
tools:context=".MainActivity">
<EditText
android:id="@+id/edt_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Name" />
<EditText
android:id="@+id/edt_mobile"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Mobile" />
<EditText
android:id="@+id/edt_email"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Email" />
<Button
android:id="@+id/btn_insert"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Insert Data" />
<Button
android:id="@+id/btn_read"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Read Data" />
<androidx.recyclerview.widget.RecyclerView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/rv_view"/>
</LinearLayout>
MainActivity.java
package com.example.myapplication06;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import com.example.myapplication06.Adapter.MyAdapter;
import com.example.myapplication06.Database.DBHelper;
import com.example.myapplication06.Model.ModelData;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends AppCompatActivity {
private Button btn_insert,btn_read;
private EditText edt_name,edt_email,edt_mobile;
List<ModelData> modelDatalist =new ArrayList<>();
private RecyclerView rv_view;
private MyAdapter myAdapter;
private DBHelper dbHelper;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn_insert=findViewById(R.id.btn_insert);
edt_name=findViewById(R.id.edt_name);
edt_email=findViewById(R.id.edt_email);
edt_mobile=findViewById(R.id.edt_mobile);
btn_read=findViewById(R.id.btn_read);
rv_view=findViewById(R.id.rv_view);
dbHelper=new DBHelper(MainActivity.this);
modelDatalist =dbHelper.ReadData();
rvlist();
btn_insert.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String name = edt_name.getText().toString();
String email = edt_email.getText().toString();
String mobile = edt_mobile.getText().toString();
dbHelper.InsertData(name,mobile,email);
rvlist();
}
});
btn_read.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
}
void rvlist()
{
modelDatalist =dbHelper.ReadData();
myAdapter=new MyAdapter(MainActivity.this,modelDatalist);
RecyclerView.LayoutManager layoutManager =new LinearLayoutManager(MainActivity.this);
rv_view.setLayoutManager(layoutManager);
rv_view.setAdapter(myAdapter);
}
}
MyAdapter.java
package com.example.myapplication06.Adapter;
import android.app.Activity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import com.example.myapplication06.MainActivity;
import com.example.myapplication06.Model.ModelData;
import com.example.myapplication06.R;
import java.util.ArrayList;
import java.util.List;
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.Viewdata> {
Activity activity;
List<ModelData> list=new ArrayList<>();
public MyAdapter(MainActivity mainActivity, List<ModelData> modelDatalist) {
activity=mainActivity;
list=modelDatalist;
}
@NonNull
@Override
public Viewdata onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(activity).inflate(R.layout.item,parent,false);
return new Viewdata(view);
}
@Override
public void onBindViewHolder(@NonNull Viewdata holder, int position) {
holder.u_id.setText(list.get(position).getId());
holder.u_name.setText(list.get(position).getName());
holder.u_mobile.setText(list.get(position).getMobile());
}
@Override
public int getItemCount() {
return list.size();
}
class Viewdata extends RecyclerView.ViewHolder {
TextView u_id,u_name,u_mobile;
public Viewdata(@NonNull View itemView) {
super(itemView);
u_id=itemView.findViewById(R.id.u_id);
u_name=itemView.findViewById(R.id.u_name);
u_mobile=itemView.findViewById(R.id.u_mobile);
}
}
}
item.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"
android:layout_width="match_parent"
android:layout_height="100dp"
android:padding="10dp">
<androidx.cardview.widget.CardView
android:layout_width="match_parent"
android:layout_height="match_parent"
app:cardCornerRadius="10dp"
app:cardUseCompatPadding="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:id="@+id/u_id"
android:gravity="center"
android:text="1"
android:textSize="18dp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:gravity="center"
android:text="Henil Jada"
android:id="@+id/u_name"
android:layout_weight="1"
android:textSize="15dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:gravity="center"
android:id="@+id/u_mobile"
android:layout_weight="1"
android:text="1111111111111"
android:textSize="15dp" />
</LinearLayout>
</LinearLayout>
</androidx.cardview.widget.CardView>
</LinearLayout>
0 Comments