SQLite in Android

 // SQLite********************************


// MainActivity.java *************************************


package com.mycodudjdjf.gkck;

import android.app.Activity;

import android.os.Bundle;

import android.util.Log;

import android.widget.Toast;

import com.mycodudjdjf.gkck.data.MyDbHandler;

import com.mycodudjdjf.gkck.modle.Contact;

import java.util.List;



public class MainActivity extends Activity { 

    String[]name={"H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca"};


    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        

        MyDbHandler db= new MyDbHandler(MainActivity.this);

        

//        

// Contact harry=new Contact();

//

//        harry.setName("Gopal");

//        harry.setPhoneNumber("6778855888");

//        db.addContact(harry);

//        

//        

//        Contact lerry=new Contact();

//

//        lerry.setName("King");

//        lerry.setPhoneNumber("85847577447");

//        db.addContact(lerry);

//        

        Contact myg=new Contact();


        myg.setName("Gopal");

        myg.setPhoneNumber("6264774571");

        db.addContact(myg);

        

        

        

      //Toast.makeText(this, myg.getName()+"\n"+myg.getPhoneNumber(), Toast.LENGTH_LONG).show();

        

        

            myg.setId(46);

            myg.setName("Changed Tehri");

            myg.setPhoneNumber("0000000000");

            int affectedRows = db.updateContact(myg);


            Log.d("dbharry", "No of affected rows are: " + affectedRows);


            // Get all contacts

            List<Contact> allContacts = db.getAllContacts();

            for(Contact contact: allContacts){

                

                Toast.makeText(getApplicationContext(), "\nId: " + contact.getId() + "\n" +

                               "Name: " + contact.getName() + "\n"+

                               "Phone Number: " + contact.getPhoneNumber() + "\n",Toast.LENGTH_LONG ).show();

                


            }



   }

}



// data/MydbHandler.java ***********************************


package com.mycodudjdjf.gkck.data;

import android.content.Context;

import android.database.sqlite.SQLiteDatabase;

import android.database.sqlite.SQLiteOpenHelper;

import android.util.Log;

import com.mycodudjdjf.gkck.params.Params;

import android.widget.Toast;

import com.mycodudjdjf.gkck.modle.Contact;

import android.content.ContentValues;

import com.mycodudjdjf.gkck.data.MyDbHandler;

import com.mycodudjdjf.gkck.modle.Contact;

import android.database.Cursor;

import android.database.sqlite.SQLiteDatabase;

import java.util.List;

import java.util.ArrayList;

import com.mycodudjdjf.gkck.params.Params;


public class MyDbHandler extends SQLiteOpenHelper{

    



public MyDbHandler(Context context) {

super(context, Params.DB_NAME, null, Params.DB_VERSION);

}


@Override

public void onCreate(SQLiteDatabase db) {

String create = "CREATE TABLE " + Params.TABLE_NAME + "("

                + Params.KEY_ID + " INTEGER PRIMARY KEY," + Params.KEY_NAME

                + " TEXT, " + Params.KEY_PHONE + " TEXT" + ")";

Log.d("dbharry", "Query being run is : "+ create);

db.execSQL(create);


}


@Override

public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {


}

        

        public void addContact(Contact contact){

            

            SQLiteDatabase db= this.getWritableDatabase();

            ContentValues value=new ContentValues();

            value.put(Params.KEY_NAME,contact.getName());

            value.put(Params.KEY_PHONE,contact.getPhoneNumber());

            db.insert(Params.TABLE_NAME,null,value);

           

            Log.d("key","Value insert succsessfully");

            db.close();

            

            

            

            

            

        }

        

    public List<Contact> getAllContacts(){

        List<Contact> contactList = new ArrayList<>();

        SQLiteDatabase db = this.getReadableDatabase();


        // Generate the query to read from the database

        String select = "SELECT * FROM " + Params.TABLE_NAME;

        Cursor cursor = db.rawQuery(select, null);


        //Loop through now

        if(cursor.moveToFirst()){

            do{

                Contact contact = new Contact();

                contact.setId(Integer.parseInt(cursor.getString(0)));

                contact.setName(cursor.getString(1));

                contact.setPhoneNumber(cursor.getString(2));

                contactList.add(contact);

            }while(cursor.moveToNext());

        }

        return contactList;

    }

    

    public int updateContact(Contact contact){

        SQLiteDatabase db = this.getWritableDatabase();


        ContentValues values = new ContentValues();

        values.put(Params.KEY_NAME, contact.getName());

        values.put(Params.KEY_PHONE, contact.getPhoneNumber());


        //Lets update now

        return db.update(Params.TABLE_NAME, values, Params.KEY_ID + "=?",

                         new String[]{String.valueOf(contact.getId())});



    }

}



// modle/Contact.java ************************************

package com.mycodudjdjf.gkck.modle;


public class Contact {

    

    private int id;

    private String name;

    private String phoneNumber;

    

    public Contact(String name,String phoneNumber){

        

        this.name=name;

        this.phoneNumber=phoneNumber;

    }

    

    public Contact(int id,String name,String phoneNumber){

        this.id=id;

        this.name=name;

        this.phoneNumber=phoneNumber;

    }

    public Contact(){

        

    }

    


    public void setId(int id) {

        this.id = id;

    }


    public int getId() {

        return id;

    }


    public void setName(String name) {

        this.name = name;

    }


    public String getName() {

        return name;

    }


    public void setPhoneNumber(String phoneNumber) {

        this.phoneNumber = phoneNumber;

    }


    public String getPhoneNumber() {

        return phoneNumber;

    }

    

    

}




// params/Params.java ************************************


package com.mycodudjdjf.gkck.params;


public class Params {

    

public static final int DB_VERSION = 1;

    public static final String DB_NAME = "contacts_db";

    public static final String TABLE_NAME = "contacts_table";



    //Keys of our table in db

    public static final String KEY_ID = "id";

    public static final String KEY_NAME = "name";

    public static final String KEY_PHONE = "phone_number";

}

    

    // layout is simply.....