基本上了解了数据库操作的安卓系统数据库查询,其实不是很难,便是建立一个数据库查询,在里面建立一个表,随后每一次实际操作数据库查询的情况下再次开启数据库查询,特定当今建立的另一半是读写能力或是写保护,随后数据库查询版本信息务必是整数金额且务必提升。实际构思如下所示:

最先,撰写一个MySQLiteOpenHelper类来承继SQLiteOpenHelper类并保持它的一些方式。编码如下所示:

//数据库查询版本信息独享静态数据Integer Version = 1;

//在SQLiteOpenHelper的派生类中,这一构造方法务必存有。

公共性MySQLiteOpenHelper(前后文前后文,字符串数组名字,SQLiteDatabase。CursorFactory加工厂,int版本号){ 0

//务必根据super启用父类中的构造方法。

super(前后文,名字,加工厂,版本号);}

//主要参数叙述

//前后文:前后文目标。

//名字:数据库查询名字。

//主要参数:加工厂

//version:当今数据库查询的版本号,该值务必为整数金额且处在增长情况。

公共性MySQLiteOpenHelper(前后文前后文,字符串数组名字,整数金额版本号)

{ this(前后文,名字,null,版本号);

}

公共性MySQLiteOpenHelper(前后文前后文,字符串数组名字)

{这(前后文,名字,版本号);

}

//建立数据库时启用。

@遮盖

公共性void Oncreate(SqLietDatabaSe db)

{System.out.println("建立数据库和表");

//建立一个名叫纪录的数据库查询和表。

//SQLite数据信息建立适用基本数据类型:整数金额数据信息,字符串类型,日期种类,二进制基本数据类型。

string SQL = " create table user(id int外键约束,name varchar(200))";

//execSQL用以实行SQL句子。

//进行数据库查询的建立。

db . ExecSqL(SQL);

//数据库查询并并不是具体建立或开启的,在启用getWritableDatabase()或getReadableDatabase()方式之一以前,不容易建立或开启数据库查询。}

//在数据库查询升級期内启用。

//假如DATABASE_VERSION值改成2,系统软件发觉目前数据库查询版本号不一起会启用onUpgrade()方式。

@遮盖

升級时公共性void(SqLite数据库查询数据库查询,int old版本号,int newversion) {system。out.println("升级数据库查询版本号为:" new version ");}}

随后在mainactivity中实行下列实际操作,

最先,建立一个服务器并建立一个数据库语句:

创建表客户(id int外键约束,名字varchar(200))

意思是建立一个名叫user的数据库查询,它有两个类,一个是外键约束——id,意思是id是这一数据库查询的关键词,还有一个长短为200的varchar标识符。下边的编码是根据事件监控按键完成的:

病案号不稳定:

//建立SQLiteOpenHelper派生类目标。

mysqlitopenhelper = dbHelper new mysqlitopenhelper(这一,“test _ Carson”);

//数据库查询并并不是具体建立或开启的,在启用getWritableDatabase()或getReadableDatabase()方式之一以前,不容易建立或开启数据库查询。

SQliteDatabaSe = SQliteDatabaSe = DBhelper . GetwritableDatabaSe();

//SQliteDatabaSe SQliteDatabaSe = DBhelper . GetReadBledDatabaSe();

摆脱;

次之,升级数据库查询的版本信息。

病案R.id .升級:

//建立SQLiteOpenHelper派生类目标。

mysqlitopenhelper dbHelper _ upgrade = new mysqlitopenhelper(本,“test_carson”,2);

//启用getWritableDatabase()方式建立或开启可写的数据库查询。

sqliteddatabase sqliteddatabase _ upgrade = DBhelper _ upgrade . getwritableDatabaSe();

//SQliteDatabaSe SQliteDatabaSe = DBhelper . GetReadBledDatabaSe();

摆脱;

第三,将一段数据信息引进数据库查询。

Emmm,种类有些像hashmap二维数组,它是一个键值对的二维数组。

case r . id . insert:system . out . println("插进数据信息");

//建立SQLiteOpenHelper派生类目标。

/////一定要注意,务必传到全新的数据库查询版本信息。

mysqlitopenhelper dbhelper 1 = new mysqlitopenhelper(本,“test_carson”,2);

//启用getWritableDatabase()方式建立或开启可写的数据库查询。

sqliteradatabase sqliteradatabase 1 = dbhelper 1 . getwritabledatabase();

//建立ContentValues目标content values values 1 = new content values();

//将键值对value 1 . put(" id ",1)插进到目标中;value 1 . put(" name "," Carson ");

//启用insert()方式将数据信息放入数据库查询SQLite database1。插进("客户",null,value 1);

//SqLietDatabaSe . ExecSqL("插进客户(id,name)值(1,' Carson ')";

//关掉数据库查询。

sqliteddatabase 1 . close();摆脱;

第四,数据库查询中的数据信息。

//点一下数据库查询实例r.id.query: system.out.println("查看数据信息");

//建立DatabaseHelper目标MySQL iteopenhelper db helper 4 = new MySQL iteopenhelper(main activity。这,《考_卡森》,2);

//启用getWritableDatabase()方式建立或开启可写的数据库查询。

sqliteddatabase sqliteddatabase 4 = dbhelper 4 . getreadabledatabase();

//启用SQLiteDatabase目标的如何查询开展查看。

//回到一个Cursor目标:数据库回到的結果集目标。

cursor cursor = SQliteDatabase4 . query(" user ",new String[] { "id "," name" } ",id=?",new String[] { "1" },null,null,null);

字符串数组id = null字符串数组名字= null

//将鼠标指针挪动到下一行,分辨結果集中化是不是有下一个数据信息。

//如果有则回到true,要是没有则回到false while(cursor . move to next()){ id = cursor . getstring(cursor . getcolumndex(" id ");

name = cursor . getstring(cursor . getcolumndex(" name ");

//輸出查看結果。

System.out.println("查看的数据信息为:“ ”ID:“ ID ”“ ”名字:“ Name ");}

//关掉数据库查询SQliteDatabaSe 4 . close();摆脱;

第五,改动数据信息,根据找键更改标值。

case r . id . modify:system . out . println("改动数据信息");

//建立一个DatabaseHelper目标。

//将数据库查询版本更新到2。

//传到的版本信息是2,比旧版(1)大,因此会启用onUpgrade()来升級数据库查询。

mysqlitopenhelper dbhelper 2 = new mysqlitopenhelper(mainactivity . this,“test_carson”,2);

//启用getWritableDatabase()获得应写的SQLiteDatabase目标。

sqliteddatabase sqliteddatabase 2 = dbhelper 2 . getwritabledatabase();

//建立一个ContentValues目标content values values 2 = new content values();

value 2 . put(" name "," Zhang San ");

//调用update方式改动数据库查询。

sqliteddatabase 2 . update(" user ",values2," id=?",new String[]{ " 1 " });

//关掉数据库查询SQliteDatabaSe 2 . close();摆脱;

第六,删掉数据信息,根据搜索关键词删掉全部键值对。

实例r.id.delete:系统软件。out.println("删掉数据信息");

//建立DatabaseHelper目标。

mysqlitopenhelper dbhelper 3 = new mysqlitopenhelper(mainactivity . this,“test_carson”,2);//启用getWritableDatabase()方式建立或开启可写的数据库查询。

sqliteddatabase sqliteddatabase 3 = dbhelper 3 . getwritabledatabase();

//删掉数据信息SQLite database3.delete ("user "," id =?"),新字符串数组[]{ " 1 " });

//关掉数据库查询SQliteDatabase3 . close();摆脱;

七,删除数据库实际操作。

case r . id . delete _ database:system . out . println("删除数据库");

mysqlitopenhelper dbhelper 5 = new mysqlitopenhelper(mainactivity . this,“test_carson”,2);

//启用getReadableDatabase()方式建立或开启可写的数据库查询。

SQliteDatabaSe 5 = DBhelper 5 . GetReadableDatabaSe();

//删掉名叫test.db的数据库查询

删除数据库(“test _ Carson”);

评论(0条)

刀客源码 游客评论