(超详细)android中SqLite数据库的使用(一文包懂包会)

简介: (超详细)android中SqLite数据库的使用(一文包懂包会)

android中使用SqLite数据库(一文包懂包会)

本文以eclipse中的操作为例。

一、控制台操作SQLite数据库

eclipse中查看数据库

DDMS->File Explorer->data->data->com.example.项目名->databases

控制台新建数据库

一开始是看不到databases这个文件夹的,这个需要自己创建,创建步骤如下:

1、win+R打开CMD控制台

2、在sdk的platform-tools中启动adb shell并进入直接的项目文件目录下(注意:要先启动虚拟机)

3、新键文件夹databases

mkdir databases

4、进入文件夹

cd databases

5、新建数据库users.db

sqlite3 users.db

6、新建表

create table user("name" TEXT,"score" INTEGER);

7、插入数据

insert into user(name,score) values ("SADON_jung",100);

8、查看数据

select * from user;

9、删除数据

delete from user where score =  100;

10、更新数据

update user set score = 99 where name = "SADON_jung";

二、eclipse中操作数据库

1、获取SQLiteDatabases

// 获取SQLiteDatabase以操作SQL语句
    //getFilesDir()获取当前目录路径
      DB = SQLiteDatabase.openOrCreateDatabase(getFilesDir() + "/users.db",null);

做到这一步你会发现,连接到的数据库并不是上面自己在控制台中新建的数据库,而是创建在了一个新的文件夹files中,但是这个影响不大,以后注意就可以了。

2、建表

public void create() {
    String createSql = "create table user('name' TEXT,'score' INTEGER)";
    DB.execSQL(createSql);
  }

3、插入数据

public void insert(String user,int score) {
        String insertSql = "insert into user (name,score) values (\'"+ user +"\'," + score +")";
        DB.execSQL(insertSql);
  }

4、删除数据

public void delete(String name,int score){
    String deleteSql = "delete from user where name = \'"+name+"\'AND score =  "+score;
    DB.execSQL(deleteSql);
    }

5、更新数据

public void updata(String user,int score) {
      String updataSql = "update user set score = " + score +" where user =\'"+ user +"\')";
    DB.execSQL(updataSql);
  }

6、查找语句

//查找数据可以使用Cursor类来存放查找到的数据
public Cursor select() {
    String selectSql = "select * from user";
    Cursor cursor = DB.rawQuery(selectSql, null);// 我们需要查处所有项故不需要查询条件
    return cursor;
}

三、Cursor类的使用

cursor.isClosed();//如果为TRUE表示该游标已关闭
cursor.close();//关闭游标,且释放资源
cursor.getColumnCount();//返回所有列的总数
cursor.getColumnNames();//返回一个字符串数组的列名,即将列名全部返回到一个字符串数组中
cursor.getCount();//返回Cursor中的行数
cursor.moveToFirst();//移动光标到第一行
cursor.moveToLast();//移动光标到最后一行
cursor.moveToNext();//移动光标到下一行
cursor.moveToPrevious();//移动光标到上一行
cursor.getColumnName(columnIndex);//从给定的索引返回列名
cursor.moveToPosition(position);//移动光标到给定位置
cursor.getString(0);//获取当前行的第一列String类型数据
cursor.getInt(1);//获取当前行的第二列int类型数据

实操中的一点笔记,希望可以帮到大家,有错误的地方希望可以指出,谢谢。

目录
相关文章
|
2月前
|
关系型数据库 MySQL 数据库
Python处理数据库:MySQL与SQLite详解 | python小知识
本文详细介绍了如何使用Python操作MySQL和SQLite数据库,包括安装必要的库、连接数据库、执行增删改查等基本操作,适合初学者快速上手。
385 15
|
3月前
|
存储 SQL 数据库
数据库知识:了解SQLite或其他移动端数据库的使用
【10月更文挑战第22天】本文介绍了SQLite在移动应用开发中的应用,包括其优势、如何在Android中集成SQLite、基本的数据库操作(增删改查)、并发访问和事务处理等。通过示例代码,帮助开发者更好地理解和使用SQLite。此外,还提到了其他移动端数据库的选择。
73 8
|
4月前
|
存储 缓存 关系型数据库
sqlite 数据库 介绍
sqlite 数据库 介绍
88 0
|
4月前
|
Web App开发 SQL 数据库
使用 Python 解析火狐浏览器的 SQLite3 数据库
本文介绍如何使用 Python 解析火狐浏览器的 SQLite3 数据库,包括书签、历史记录和下载记录等。通过安装 Python 和 SQLite3,定位火狐数据库文件路径,编写 Python 脚本连接数据库并执行 SQL 查询,最终输出最近访问的网站历史记录。
73 4
|
4月前
|
存储 关系型数据库 数据库
轻量级数据库的利器:Python 及其内置 SQLite 简介
轻量级数据库的利器:Python 及其内置 SQLite 简介
102 3
|
4月前
|
应用服务中间件 PHP Apache
PbootCMS提示错误信息“未检测到您服务器环境的sqlite3数据库扩展...”
PbootCMS提示错误信息“未检测到您服务器环境的sqlite3数据库扩展...”
|
5月前
|
数据库 数据库管理
qt对sqlite数据库多线程的操作
本文总结了在Qt中进行SQLite数据库多线程操作时应注意的四个关键问题,包括数据库驱动加载、加锁、数据库的打开与关闭,以及QsqlQuery变量的使用。
313 1
|
5月前
|
存储 API 数据库
QML使用Sqlite数据库存储ListModel数据
本文介绍了在QML中使用Sqlite数据库存储ListModel数据的方法,包括如何创建数据库、读取数据、动态添加和删除数据,以及如何在程序启动和退出时与数据库同步数据。
125 2
|
5月前
|
JSON NoSQL 数据库
和SQLite数据库对应的NoSQL数据库:TinyDB的详细使用(python3经典编程案例)
该文章详细介绍了TinyDB这一轻量级NoSQL数据库的使用方法,包括如何在Python3环境中安装、创建数据库、插入数据、查询、更新以及删除记录等操作,并提供了多个编程案例。
244 0
|
6月前
|
SQL 存储 小程序
【教程】navicat配合HTTP通道远程连接SQLite数据库
本文介绍了如何通过 Navicat Premium 工具配合 n_tunnel_sqlite.php 和 HTTP 通道远程连接服务器上的 SQLite 数据库。SQLite 是一种自给自足的、无服务器的 SQL 数据库引擎,由于其端口未对外开放,直接使用 Navicat 进行远程连接不可行。文章详细记录了使用 HTTP 通道实现远程连接的过程,包括定位本地 `ntunnel_sqlite.php` 文件,将其上传至服务器,并通过 Navicat 配置 HTTP 通道连接 SQLite 数据库的具体步骤。
299 0
【教程】navicat配合HTTP通道远程连接SQLite数据库

热门文章

最新文章

  • 1
    如何修复 Android 和 Windows 不支持视频编解码器的问题?
  • 2
    Android历史版本与APK文件结构
  • 3
    【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
  • 4
    【04】flutter补打包流程的签名过程-APP安卓调试配置-结构化项目目录-完善注册相关页面-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程
  • 5
    当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
  • 6
    APP-国内主流安卓商店-应用市场-鸿蒙商店上架之必备前提·全国公安安全信息评估报告如何申请-需要安全评估报告的资料是哪些-优雅草卓伊凡全程操作
  • 7
    【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
  • 8
    【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
  • 9
    Android经典面试题之Kotlin中Lambda表达式和匿名函数的区别
  • 10
    【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡