微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Sqlite存储介绍

本例实现sqlite数据库的简单插入、删除查询和数据表的重建和删除,让大家了解sqlite的使用方法,不多说了

Xml布局,相信大家都没有问题吧。。。

main.xml

<?xmlversion="1.0"encoding="utf-8"?>

<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

>

<Button

android:id="@+id/insert"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="insert()"

/>

<Button

android:id="@+id/delete"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="delete()"

/>

<Button

android:id="@+id/query"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="query()"

/>

<Button

android:id="@+id/drop"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="droptable"

/>

<Button

android:id="@+id/re_creat"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="re_create_table"

/>

</LinearLayout>

JAVA代码

packagecom.xd.sqlite;

importandroid.app.Activity;

importandroid.content.ContentValues;

importandroid.content.Context;

importandroid.database.Cursor;

importandroid.database.sqlite.sqliteDatabase;

importandroid.database.sqlite.sqliteOpenHelper;

importandroid.database.sqlite.sqliteDatabase.CursorFactory;

importandroid.os.Bundle;

importandroid.view.View;

importandroid.view.View.OnClickListener;

importandroid.widget.Button;

importandroid.widget.Toast;

publicclassMainActivityextendsActivity{

privateContextcontext=this;

privateButtonBtnInsert;

privateButtonBtnDelete;

privateButtonBtnQuery;

privateButtonBtnDrop;

privateButtonBtnReCreat;

DatabaseHelpermOpenHelper;

privatestaticclassDatabaseHelperextendssqliteOpenHelper{

publicDatabaseHelper(Contextcontext,Stringname,

CursorFactoryfactory,intversion){

super(context,name,factory,version);

}

@Override

publicvoidonCreate(sqliteDatabasedb){

//数据库第一次生成的时候会调用这个方法,一般在这里生成数据表

Stringsql="createtablesqlitetest(s_idintegerprimarykey,"

+"s_titletextnotnull,s_contexttextnotnull)";

db.execsql(sql);

}

@Override

publicvoidonUpgrade(sqliteDatabasedb,intoldVersion,intnewVersion){

//数据库需要升级的时候,会主动调用这个方法。一般在这里删除数据表,并建立数据表

}

}

privateOnClickListenerclick=newOnClickListener(){

publicvoidonClick(Viewarg0){

inttemp=arg0.getId();

switch(temp){

caseR.id.insert:

insert();

Toast.makeText(context,"插入数据成功!",Toast.LENGTH_SHORT).show();

break;

caseR.id.delete:

delete();

Toast.makeText(context,"删除记录成功!",Toast.LENGTH_SHORT).show();

break;

caseR.id.query:

inti=query();

Toast.makeText(context,"查询"+i+"条记录",Toast.LENGTH_SHORT).show();

break;

caseR.id.drop:

drop();

Toast.makeText(context,"删除表成功!",Toast.LENGTH_SHORT).show();

break;

caseR.id.re_creat:

Re_Create();

Toast.makeText(context,"重建表成功!",Toast.LENGTH_SHORT).show();

break;

}

}};

@Override

publicvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

mOpenHelper=newDatabaseHelper(this,"test.db",null,1);

getView();

}

/**

*为控件设置值

*/

privatevoidgetView(){

BtnInsert=(Button)findViewById(R.id.insert);

BtnInsert.setonClickListener(click);

BtnDelete=(Button)findViewById(R.id.delete);

BtnDelete.setonClickListener(click);

BtnQuery=(Button)findViewById(R.id.query);

BtnQuery.setonClickListener(click);

BtnDrop=(Button)findViewById(R.id.drop);

BtnDrop.setonClickListener(click);

BtnReCreat=(Button)findViewById(R.id.re_creat);

BtnReCreat.setonClickListener(click);

}

/**

*插入数据

*@paramtitle

*@paramcontext

*/

privatevoidinsert(){

//得到一个可写的数据库,如果还没有建立就会调用mOpenHelperonCreate方法,否则返回一个可写的数据库

sqliteDatabasedb=mOpenHelper.getWritableDatabase();

Stringsql="insertintosqlitetest(s_title,s_context)values('插入的记录','记录的内容')";

db.execsql(sql);

ContentValuesinitialValues=newContentValues();

initialValues.put("s_title","换种方式插入记录");

initialValues.put("s_context","这条记录的内容");

db.insert("sqlitetest",initialValues);

}

/**

*查询数据库记录

*@return

*/

privateintquery(){

sqliteDatabasedb=mOpenHelper.getReadableDatabase();

Cursorcur=db.query("sqlitetest",newString[]{"s_title,s_context"},null);

returncur.getCount();

}

/**

*删除记录

*/

privatevoiddelete(){

sqliteDatabasedb=mOpenHelper.getWritableDatabase();

db.delete("sqlitetest","s_title='插入的记录'",null);

}

/**

*删除

*/

privatevoiddrop(){

sqliteDatabasedb=mOpenHelper.getWritableDatabase();

Stringsql="droptablesqlitetest";

db.execsql(sql);

}

privatevoidRe_Create(){

sqliteDatabasedb=mOpenHelper.getWritableDatabase();

Stringsql="createtablesqlitetest(s_idintegerprimarykey,s_contexttextnotnull)";

db.execsql("droptableifexistssqlitetest");

db.execsql(sql);

}

}

没有什么技术含量,只是初步看一下sqlite的使用。。。

源码下载:http://u.115.com/file/f9b2fe5ae8

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐