Android Studio如何查看自己创建的SQLite数据库
在学习安卓开发的时候,有时候需要建立一个SQLite数据库,在创建完之后,想要查看的时候你不知道在哪里找,并且有时候找到了也不知道如何查看,现在就让我们来了解一下如何找到并查看安卓里的SQLite数据库,效果如下
很多同学反映数据库连接不上,那可能是因为手机模拟器的文件访问不到造成的,可以先导出数据库到桌面再尝试那个方法!!!
在这里插入图片描述
下面开始 *** 作
一. 找到SQLite数据库
1.如下图所示找到设备的文件在这里插入图片描述
2.找到对应文件,路径为
/data/data/com.example.fileoperation/databases/test.db
在这里插入图片描述
3.现在已经找到它在那里了,现在找到它的绝对路径,在C盘里搜索你的数据库文件,我这里是test.db,找到之后复制它的绝对路径,一会要用到
在这里插入图片描述
二、安装SQLite数据库插件
具体安装方法如下,我这里已经安装过了
在这里插入图片描述
在这里插入图片描述
三、用SQLite插件添加数据库文件
首先先重启软件,重启之后会加载插件
1、打开视图,点击+
在这里插入图片描述
选择SQLite
在这里插入图片描述
点击。。。,然后选择路径,将刚刚复制的绝对路径复制进来
要在Android系统中 *** 作SQLite数据库,是通过Android的核心类SQLiteDatabase类来实现的,通常情况下为了数据库升级的需要以及使用方便,我们会选择继承SQLiteOpenHelper抽像类,但是SQLiteOpenHelper会将数据库文件创建在一个固定的目录(内存的/data/data/<package name/databases>目录中),如果你想使用已经存在的数据库文件也就是说数据库会和程序一起发布,就得通过使用SQLiteDabase的静态方法OpenOrCreateDatabase()方法来得到SQLiteDabase对象,下面是一个具体 *** 作类:package net.my.dao
import java.io.File
import java.io.FileOutputStream
import java.io.InputStream
import net.my.jokebook.R
import android.app.Activity
import android.content.Context
import android.database.sqlite.SQLiteDatabase
public class DBHelper {
//得到SD卡路径
private final String DATABASE_PATH = android.os.Environment
.getExternalStorageDirectory().getAbsolutePath()
+ "/joke"
private final Activity activity
//数据库名
private final String DATABASE_FILENAME
public DBHelper(Context context) {
// TODO Auto-generated constructor stub
//这里直接给数据库名
DATABASE_FILENAME = "jokebook.db3"
activity = (Activity)context
}
//得到 *** 作数据库的对象
public SQLiteDatabase openDatabase()
{
try
{
boolean b = false
//得到数据库的完整路径名
String databaseFilename = DATABASE_PATH + "/" + DATABASE_FILENAME
//将数据库文件从资源文件放到合适地方(资源文件也就是数据库文件放在项目的res下的raw目录中)
//将数据库文件复制到SD卡中 File dir = new File(DATABASE_PATH)
if (!dir.exists())
b = dir.mkdir()
//判断是否存在该文件
if (!(new File(databaseFilename)).exists())
{
//不存在得到数据库输入流对象
InputStream is = activity.getResources().openRawResource(
R.raw.jokebook)
//创建输出流
FileOutputStream fos = new FileOutputStream(databaseFilename)
//将数据输出
byte[] buffer = new byte[8192]
int count = 0
while ((count = is.read(buffer)) >0)
{
fos.write(buffer, 0, count)
}
//关闭资源
fos.close()
is.close()
}
//得到SQLDatabase对象
SQLiteDatabase database = SQLiteDatabase.openOrCreateDatabase(
databaseFilename, null)
return database
}
catch (Exception e)
{
System.out.println(e.getMessage())
}
return null
}
}
写完这个类之后,就能得到SQLiteDatabase对象,就能对数据库 *** 作了
SQLite是轻量级嵌入式数据库引擎,它支持 SQL 语言,并且只利用很少的内存就有很好的性能。此外它还是开源的,任何人都可以使用它。许多开源项目((Mozilla, PHP, Python)都使用了 SQLiteSQLite 由以下几个组件组成:SQL 编译器、内核、后端以及附件。SQLite 通过利用虚拟机和虚拟数据库引擎(VDBE),使调试、修改和扩展 SQLite 的内核变得更加方便。
1. Android 集成了 SQLite 数据库 Android 在运行时(run-time)集成了 SQLite,所以每个 Android 应用程序都可以使用 SQLite 数据库。
2. 数据库存储在 data/<项目文件夹 >/databases/ 下。 Android 开发中使用 SQLite 数据库 Activites 可以通过 Content Provider 或者 Service 访问一个数据库。
3. Android 提供了 SQLiteOpenHelper 创建一个数据库,只要继承 SQLiteOpenHelper 类,就可以轻松的创建数据库。SQLiteOpenHelper 类根据开发应用程序的需要,封装了创建和更新数据库使用的逻辑。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)