加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Sqlite存储介绍

发布时间:2020-12-12 20:44:31 所属栏目:百科 来源:网络整理
导读:本例实现 SQlite 数据库的简单插入、删除、查询和数据表的重建和删除,让大家了解 Sqlite 的使用方法,不多说了 Xml 布局,相信大家都没有问题吧。。。 main.xml ? xml version = "1.0" encoding = "utf-8" ? LinearLayout xmlns:android = "http://schemas.

<?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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

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

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

main.xml

    推荐文章
      热点阅读