First, the principle
SQLite related Introduction I do not say, want to understand the classmate can Google or Baidu, good ~ directly into the theme, to use SQLite storage data, first create a database, create the following methods:
Sqlitedatabase db = openorcreatedatabase ("database name. db", context.mode_private, NULL);
Db.execsql ("DROP TABLE IF EXISTS person");
Create a person table
Db.execsql ("Create TABLE person (_id INTEGER PRIMARY KEY autoincrement, name VARCHAR, age SMALLINT)" When the database is created you can use SQLite , then we have to increase the database, delete, change, check operation L.
Increase:
| The code is as follows |
|
person who = new person ();
Person.setname ("John");
Person.setage (19);
Inserting data
Db.execsql ("INSERT into person VALUES (NULL,?,?)", new object[] {person.getname (), Person.getage ()}); |
By deleting:
| The code is as follows |
|
String whereclause = "_id=?";/ /delete Condition
String[] Whereargs = {"1"};//deleted condition parameters
Db.delete ("person", Whereclause,whereargs);
|
To perform a delete change:
| The code is as follows |
|
|
Person Person2 = new person ();
Person2.setname ("John");
Person2.setage (20);
Contentvalues CV = new Contentvalues ();
Cv.put ("Age", Person2.getage ()); Modify Content
Db.update ("Person", CV, "name =?", new string[] {person2.getname ()}); |
Check:
| The code is as follows |
|
|
Cursor C = Db.rawquery ("select * from person where name=?", New string[]{"John"});
while (C.movetonext ()) {
int ID =integer.parseint (c.getstring (C.getcolumnindex ("_id"));
String name =c.getstring (C.getcolumnindex ("name"));
String age = c.getstring (C.getcolumnindex (' age '));
LOG.V ("Test", "ID:" + ID + "Name:" + name + "Age:" + age);
} |
Here is the complete code.
Second, the Code
First step:
| The code is as follows |
|
|
<relativelayout xmlns:android= "Http://schemas.android.com/apk/res/android"
Xmlns:tools= "Http://schemas.android.com/tools"
Android:layout_width= "Match_parent"
android:layout_height= "Match_parent" >
<button
Android:id= "@+id/btn_create_database"
Android:layout_width= "Fill_parent"
android:layout_height= "Wrap_content"
android:text= "CreateDatabase"
/>
<button
Android:id= "@+id/btn_add"
Android:layout_width= "Fill_parent"
android:layout_height= "Wrap_content"
android:layout_below= "@id/btn_create_database"
android:text= "Add"
/>
<button
Android:id= "@+id/btn_update"
Android:layout_width= "Fill_parent"
android:layout_height= "Wrap_content"
android:layout_below= "@id/btn_add"
android:text= "Update"
/>
<button
Android:id= "@+id/btn_query"
Android:layout_width= "Fill_parent"
android:layout_height= "Wrap_content"
android:layout_below= "@id/btn_update"
android:text= "Query"
/>
<button
Android:id= "@+id/btn_delete"
Android:layout_width= "Fill_parent"
android:layout_height= "Wrap_content"
android:layout_below= "@id/btn_query"
android:text= "Delete"
/>
</RelativeLayout> |
Step Two:
| The code is as follows |
|
|
Package com.msquirrel.activity;
Import android.app.Activity;
Import android.content.ContentValues;
Import Android.content.Context;
Import Android.database.Cursor;
Import Android.database.sqlite.SQLiteDatabase;
Import Android.os.Bundle;
Import Android.util.Log;
Import Android.view.View;
Import Android.view.View.OnClickListener;
Import Android.widget.Button;
Import Com.example.demo_sqlite. R
Import Com.msquirrel.model.Person;
/**
* Execute CREATE DATABASE, add data, delete data, modify data, query data.
*
* @author Msquirrel
*
*/
public class Sqliteactivity extends activity {
Private Button btncteatedatabase = null;
Private Button btnadd = null;
Private Button btnupdate = null;
Private Button btnquery = null;
Private Button btndelete = null;
Private Sqlitedatabase db = null;
@Override
public void OnCreate (Bundle savedinstancestate) {
Super.oncreate (savedinstancestate);
Setcontentview (R.layout.activity_sqlite);
Open or create a test.db database
db = Openorcreatedatabase ("Test.db", context.mode_private, NULL);
Initview ();
Setlistener ();
}
private void Initview () {
TODO auto-generated Method Stub
Btncteatedatabase = (Button) Findviewbyid (r.id.btn_create_database);
Btnadd = (Button) Findviewbyid (R.id.btn_add);
Btnupdate = (Button) Findviewbyid (r.id.btn_update);
Btnquery = (Button) Findviewbyid (r.id.btn_query);
Btndelete = (Button) Findviewbyid (r.id.btn_delete);
}
private void Setlistener () {
TODO auto-generated Method Stub
Btncteatedatabase.setonclicklistener (New Myonclicklistener ());
Btnadd.setonclicklistener (New Myonclicklistener ());
Btnupdate.setonclicklistener (New Myonclicklistener ());
Btnquery.setonclicklistener (New Myonclicklistener ());
Btndelete.setonclicklistener (New Myonclicklistener ());
}
Private class Myonclicklistener implements Onclicklistener {
@Override
public void OnClick (View v) {
TODO auto-generated Method Stub
Switch (V.getid ()) {
Case R.id.btn_create_database:
Db.execsql ("DROP TABLE IF EXISTS person");
Create a person table
Db.execsql ("CREATE TABLE person (_id INTEGER PRIMARY KEY autoincrement, name VARCHAR, age SMALLINT)");
Break
Case R.id.btn_add:
person who = new person ();
Person.setname ("John");
Person.setage (19);
Inserting data
Db.execsql ("INSERT into person VALUES (NULL,?,?)",
New object[] {person.getname (), Person.getage ()});
Break
Case R.id.btn_update:
Person Person2 = new person ();
Person2.setname ("John");
Person2.setage (20);
Contentvalues CV = new Contentvalues ();
Cv.put ("Age", Person2.getage ()); Modify Content
Db.update ("Person", CV, "name =?",
New string[] {person2.getname ()});
Break
Case R.id.btn_query:
Cursor C = Db.rawquery ("select * from person where name=?", New string[]{"John"});
while (C.movetonext ()) {
int id = integer.parseint (c.getstring (C.getcolumnindex ("_id"));
String name =c.getstring (C.getcolumnindex ("name"));
String age = c.getstring (C.getcolumnindex (' age '));
LOG.V ("Test", "ID:" + ID + "Name:" + name + "Age:" + age);
}
Break
Case R.id.btn_delete:
String whereclause = "_id=?";/ /delete Condition
String[] Whereargs = {"1"};//deleted condition parameters
Db.delete ("person", Whereclause,whereargs)//execute Delete
Break
Default
Break
}
}
}
} |
Step Three:
| The code is as follows |
|
|
Package Com.msquirrel.model;
/**
* Entity class
* @author Msquirrel
*
*/
public class Person {
private int _id;
private String name;
private int age;
public int get_id () {
return _id;
}
public void set_id (int _id) {
this._id = _id;
}
Public String GetName () {
return name;
}
public void SetName (String name) {
THIS.name = name;
}
public int getage () {
return age;
}
public void Setage (int age) {
This.age = age;
}
}
|
Finally, we should remember to turn off the sqlitedatabase.