Android 不自动提供数据库。在 Android 应用程序中使用 SQLite,必须自己创建数据库,然后创建表、索引,填充数据。Android 提供了 SQLiteOpenHelper 帮助你创建一个数据库,你只要继承 SQLiteOpenHelper 类,就可以轻松的创建数据库。SQLiteOpenHelper 类根据开发应用程序的需要,封装了创建和更新数据库使用的逻辑。SQLiteOpenHelper 的子类,至少需要实现三个方法:
构造函数,调用父类 SQLiteOpenHelper 的构造函数
onCreate()方法;// TODO 创建数据库后,对数据库的 *** 作
onUpgrage()方法。// TODO 更改数据库版本的 *** 作
当你完成了对数据库的 *** 作(例如你的 Activity 已经关闭),需要调用 SQLiteDatabase 的 Close() 方法来释放掉数据库连接。
这种方式通常连接一个外部的数据库,第一个参数就是数据库文件,这个数据库不是当前项目中生成的,通常放在项目的Assets目录下,当然也可以在手机内,如上面参数那个目录,前提是那个文件存在且你的程序有访问权限。
另一种使用数据库的方式是,自己创建数据库并创建相应的数据库表,参考下面的代码:
public class DatabaseHelper extends SQLiteOpenHelper {
//构造,调用父类构造,数据库名字,版本号(传入更大的版本号可以让数据库升级,onUpgrade被调用)
public DatabaseHelper(Context context) {
super(context, DatabaseConstantDATABASE_NAME, null, DatabaseConstantDATABASE_VERSION);
}
//数据库创建时调用,里面执行表创建语句
@Override
public void onCreate(SQLiteDatabase db) {
dbexecSQL(createVoucherTable());
}
//数据库升级时调用,先删除旧表,在调用onCreate创建表
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
dbexecSQL("DROP TABLE IF EXISTS " + DatabaseConstantTABLE_NAME);
onCreate(db);
}
//生成 创建表的SQL语句
private String createVoucherTable() {
StringBuffer sb = new StringBuffer();
sbappend(" CREATE TABLE ")append(DatabaseConstantTABLE_NAME)append("( ")append(“ID”)
append(" TEXT PRIMARY KEY, ")
append(“USER_ID”)append(" INTEGER, ")append(“SMS_CONTENT”)append(" TEXT ) ");
return sbtoString();
}
} 继承SQLiteOpenHelper并实现里面的方法
之后:
//得到数据库助手类
helper
=
new
DatabaseHelper(context);
//通过助手类,打开一个可读写的数据库连接
SQLiteDatabase
database
=
helpergetReadableDatabase();
//查询表中所有记录
databasequery(DatabaseConstantTABLE_NAME,
null,
null,
null,
null,
null,
null);
android 数据库文件查看的方法有:
第一种方法、使用DDMS导出sqlite数据库。
1、打开android项目的调试模式,然后找到显示DDMS:
选择DDMS
2、切换到DDMS,显示File Explorer窗口,找到/data/data/,然后找到程序包的文件夹,打开databases,就能看到sqlite数据库文件了。选择将其导出。
3、把sqlite数据库文件以文件的方式导出来了,然后使用sqlite界面管理工具如sqlite administrator、sqlite man或者firefox插件sqlite manager等打开就可以了。
第二种方法、使用adb工具访问sqlite数据库
1、Android Debug Bridge(ADB)是Android的一个通用调试工具,它可以更新设备或模拟器中的代码,可以管理预定端口,可以在设备上运行shell命令,android是基于Linux内核,它的内部文件结构也是采用linux文件组织方式,因此访问它的文件结构需要使用shell。用shell来访问android应用中的sqlite数据库文件。
2、运行cmd,切换到android-sdk目录,运行adbexe,加上参数shell,出现#号就代表进入了shell命令模式,注意adb要在Android模拟器运行时才能进入shell:
3、shell命令记住两个基本命令ls和cd,类似windows命令提示行中的dir和cd,代表列出当前目录下文件列表和进入到指定目录。了解这两个命令之后,就可以找到data/data/项目包名/databases;
4、找到数据库文件:使用sqlite管理工具来进行 *** 作了。键入sqlite3 数据库名就进入了sqlite管理模式了。在android的sdk中自带了sqlite3exe,这是sqlite的官方管理工具,它是一个命令行工具。为了使用方便,将其路径注册到系统环境变量path中,即将;%Android_Home%加在Path中,这样只样运行sqlite3,就能直接打开sqlite管理工具了。
第三种方法、sqlite管理数据库
sqlite命令行工具默认是以结束语句的。所以如果只是一行语句,要在末尾加;或者在下一行中键入;这样sqlite命令才会被执行。
sqlite常用命令:
tables--查看数据库的表列表
exit--退出sqlite命令行
其他命令可随时help查看帮助。sql命令可直接在此命令行上执行即可。
android本地数据库sqlite基本是用来存本地数据或者加载服务器上的数据的。你是想问android客户端如何和服务器的数据库交互吧?这个很简单,他们不直接交互,android会发消息给服务器,请求某一些 *** 作,然后服务器收到客户端的消息后,对应的再 *** 作服务器上的数据库,然后返回消息给客户端。
1,进入到控制台中,输入adb shell,进入到命令模式的环境中
2,输入:cd /data/data/
3, 选择你所在的数据库文件,比如我的comandroidhomework, 输入命令:cd comandroidhomework
4, 可以使用ls -l 命令查看当前目录中的文件
5,输入: cd databases 进入到数据库文件中
6, ls -l 显示你数据库中你建立的数据库
7, sqlite3 infodb 进入到你选择的数据库中
8, tables :查看你建的表
9, select from table_name;s 可以查看整个表的信息
10, 使用其他的SQL语句可以进一步对表进行 *** 作,注意SQL语句必须用分号(;)结尾
数据库很多,但是安卓直接支持的数据库只有sqlite一种。如果要使用其它的非本地数据库,你得建立连接,采用webservice或>
以上就是关于如何 *** 作android中的数据库全部的内容,包括:如何 *** 作android中的数据库、android 如何连接数据库、android 数据库文件怎么看等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)