November 16, 2023
Database Program
package com.example.sqllitedatabase; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; public class DBHelper extends SQLiteOpenHelper { public DBHelper(Context context) { super(context, "Userdata.db", null, 1); } @Override public void onCreate(SQLiteDatabase db) { db.execSQL("CREATE TABLE Userdetails (name TEXT PRIMARY KEY, contact TEXT, age TEXT)"); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { db.execSQL("DROP TABLE IF EXISTS Userdetails"); onCreate(db); } public boolean insertData(String name, String contact, String age) { SQLiteDatabase db = this.getWritableDatabase(); ContentValues contentValues = new ContentValues(); contentValues.put("name", name); contentValues.put("contact", contact); contentValues.put("age", age); long result = db.insert("Userdetails", null, contentValues); return result != -1; } public boolean updateData(String name, String contact, String age) { SQLiteDatabase db = this.getWritableDatabase(); ContentValues contentValues = new ContentValues(); contentValues.put("contact", contact); contentValues.put("age", age); Cursor cursor = db.rawQuery("SELECT * FROM Userdetails WHERE name=?", new String[]{name}); if (cursor.getCount() > 0) { long result = db.update("Userdetails", contentValues, "name=?", new String[]{name}); return result != -1; } else { return false; } } public boolean deleteData(String name) { SQLiteDatabase db = this.getWritableDatabase(); Cursor cursor = db.rawQuery("SELECT * FROM Userdetails WHERE name=?", new String[]{name}); if (cursor.getCount() > 0) { long result = db.delete("Userdetails", "name=?", new String[]{name}); return result != -1; } else { return false; } } public Cursor viewData() { SQLiteDatabase db = this.getWritableDatabase(); return db.rawQuery("SELECT * FROM Userdetails", null); } }
package com.example.sqllitedatabase; import android.database.Cursor; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AppCompatActivity; public class MainActivity extends AppCompatActivity { EditText name, contact, age; Button insert, update, delete, view; DBHelper DB; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); name = findViewById(R.id.editTextTextPersonName2); contact = findViewById(R.id.editTextTextPersonName3); age = findViewById(R.id.editTextTextPersonName); insert = findViewById(R.id.insert); update = findViewById(R.id.update); delete = findViewById(R.id.delete); view = findViewById(R.id.view); DB = new DBHelper(this); insert.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String nameTXT = name.getText().toString(); String contactTXT = contact.getText().toString(); String ageTXT = age.getText().toString(); boolean qryStatus = DB.insertData(nameTXT, contactTXT, ageTXT); if (qryStatus) Toast.makeText(MainActivity.this, "New Record Created", Toast.LENGTH_SHORT).show(); else Toast.makeText(MainActivity.this, "New Record Creation Failed", Toast.LENGTH_SHORT).show(); } }); update.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String nameTXT = name.getText().toString(); String contactTXT = contact.getText().toString(); String ageTXT = age.getText().toString(); boolean qryStatus = DB.updateData(nameTXT, contactTXT, ageTXT); if (qryStatus) Toast.makeText(MainActivity.this, "Record Updated", Toast.LENGTH_SHORT).show(); else Toast.makeText(MainActivity.this, "Record Updation Failed", Toast.LENGTH_SHORT).show(); } }); delete.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String nameTXT = name.getText().toString(); boolean qryStatus = DB.deleteData(nameTXT); if (qryStatus) Toast.makeText(MainActivity.this, "Record Deleted", Toast.LENGTH_SHORT).show(); else Toast.makeText(MainActivity.this, "Record Deletion Failed", Toast.LENGTH_SHORT).show(); } }); view.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Cursor res = DB.viewData(); if (res.getCount() == 0) Toast.makeText(MainActivity.this, "No Record Exist", Toast.LENGTH_SHORT).show(); else { StringBuffer buffer = new StringBuffer(); while (res.moveToNext()) { buffer.append("Name: " + res.getString(0) + "\n"); buffer.append("Contact: " + res.getString(1) + "\n"); buffer.append("Age: " + res.getString(2) + "\n"); } AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); builder.setCancelable(true); builder.setTitle("User Data"); builder.setMessage(buffer.toString()); builder.show(); } } }); } }
- Make sure to use the correct IDs for buttons in your XML layout (e.g.,
btnInsert
,btnUpdate
,btnDelete
,btnView
). Update the IDs accordingly in your layout file.
Remember to update your XML layout file if needed, and ensure that the button IDs in the layout file match the IDs used in the findViewById calls in your MainActivity class.