我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Android Sqlite

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Android Sqlite

什么是Sqlite

小型的、可嵌入、开源的关系型数据库,效率高,无数据类型,支持事务操作,程序驱动。

跨平台的磁盘文件 代码量少 api简单易用 1. sqlite数据库支持的数据类型
Integer、varchar(10)、float、double、char(10)、text
2. sql语句回顾 2.1. 创建表
create table 表名(字段名称 数据类型 约束, 字段类型,数据类型 约束...)
create table person(_id Integer primary key, name varchar(10), age Integer not null)
2.2 删除表
drop table 表名
drop table person
2.3 插入数据
insert into 表名[字段,字段] values(值1,值2)
insert into person(_id, age) values(1, 20)
insert into values(2, "zs", 30)
2.4 修改数据
update 表名 set 字段=新值 where 修改的条件
update person set name="ls", age = 20, where _id = 1
2.5 删除数据
delete from 表名 where 删除的条件
delete from person from where _id = 2
2.6 查询语句
select 字段名 from 表名 where 查询条件 group by 分组的字段 having 筛选条件 order by 排序字段
select * from person;
select _id, name from person
select * from person where _id = 1
select * from person where _id  1
select * from person where _id = 1 and age > 18
select * from person where name like "%小%"
select * from person where name like "_小%"
select * from person where name is null 
select * from person where name age between 10 and 20
select * from person where age > 18 order by _id
Sqlite 数据库创建 SQLiteOpenHelper: 帮助类 onCreate(): 创建方法 onUpdate(): 数据库升级方法 onOpen(): 打开数据库方法 1. 主界面

    
2. 实现MySqliteHelper并继承自SQLiteOpenHelper

public class MySqlitHelper extends SQLiteOpenHelper {
    
    public MySqlitHelper(@Nullable Context context, @Nullable String name, @Nullable SQLiteDatabase.CursorFactory factory, int version) {
        super(context, name, factory, version);
    }
    public MySqlitHelper(Context context) {
        super(context, Constant.DATABASE_NAME, null, Constant.DATABASE_VERSION);
    }
    
    @Override
    public void onCreate(SQLiteDatabase db) {
        Log.i("tag", "--------onCreate--------");
        String sql = "create table " + Constant.TABLE_NAME + "(" + Constant._ID +
                " Integer primary key, " + Constant.NAME + " varchar(10), " + Constant.AGE +" Integer)";
        db.execSQL(sql);
    }
    
    @Override
    public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
    }
    
    @Override
    public void onOpen(SQLiteDatabase db) {
        Log.i("tag:", "-----------onOpen-------------");
        super.onOpen(db);
    }
}
3. 定义DbManager类来管理数据库

public class DbManager {
    private static MySqlitHelper helper;
    public static MySqlitHelper getInstance(Context context) {
        if (helper == null) {
            helper = new MySqlitHelper(context);
        }
        return helper;
    }
    
    public static void execSQL(SQLiteDatabase db, String sql) {
        if (db != null) {
            if (sql != null && !"".equals(sql)) {
                db.execSQL(sql);
            }
        }
    }
}
4. 定义常量类来存储项目相关的常量
public class Constant {
    public static final String DATABASE_NAME = "info.db";
    public static final int DATABASE_VERSION = 1;
    public static final String TABLE_NAME = "person";
    public static final String _ID = "_id";
    public static final String NAME = "name";
    public static final String AGE = "age";
}
5. 在MainActivity中实现相关逻辑
package com.example.sqlitedemo;
import androidx.appcompat.app.AppCompatActivity;
import android.content.ContentValues;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
    private MySqlitHelper helper;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        helper = DbManager.getInstance(this);
    }
    
    public void createDb(View view) {
        
        SQLiteDatabase db = helper.getWritableDatabase();
    }
    public void click(View view) {
        switch (view.getId()) {
            case R.id.btn_insert:
                SQLiteDatabase db = helper.getWritableDatabase();
                String sql = "insert into "+Constant.TABLE_NAME+" values(1, 'zhangsan', 20)";
                DbManager.execSQL(db, sql);
                String sql2 = "inert into "+Constant.TABLE_NAME+" values(2, 'lisi', 25)";
                DbManager.execSQL(db, sql2);
                db.close();
                break;
            case R.id.btn_update:
                db = helper.getWritableDatabase();
                String updateSql = "update person set name = 'xiaoming' where _id = 1";
                DbManager.execSQL(db, updateSql);
                db.close();
                break;
            case R.id.btn_delete:
                db = helper.getWritableDatabase();
                String delSql = "delete from person where _id = 2";
                DbManager.execSQL(db, delSql);
                db.close();
                break;
        }
    }
    public void onClick(View view) {
        SQLiteDatabase db = helper.getWritableDatabase();
        switch (view.getId()) {
            case R.id.btn_insertApi:
                
                ContentValues values = new ContentValues();
                values.put(Constant._ID, 3);
                values.put(Constant.NAME, "张三");
                values.put(Constant.AGE, 30);
                long result = db.insert(Constant.TABLE_NAME, null, values);
                if (result > 0) {
                    Toast.makeText(this, "插入数据成功", Toast.LENGTH_SHORT).show();
                } else {
                    Toast.makeText(this, "插入数据失败", Toast.LENGTH_SHORT).show();
                }
            case R.id.btn_updateApi:
                
                ContentValues cv = new ContentValues();
                cv.put(Constant.NAME, "小木"); // 需要修改的字段名称,修改后的字段值
                int count = db.update(Constant.TABLE_NAME, cv, "_id=?", new String[]{"3"});
        }
    }
}

作者:Sun_lulu


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Android Sqlite

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Android Sqlite

什么是Sqlite 小型的、可嵌入、开源的关系型数据库,效率高,无数据类型,支持事务操作,程序驱动。 跨平台的磁盘文件 代码量少 api简单易用 1. sqlite数据库支持的数据类型 Integer、varchar(10)、float、d
2022-06-06

Android数据库之Sqlite

sqllie区别于我们以前接触的数据库,它是通过android自带的 方法来驱动数据库的建立:建立数据库表和操作数据库的大致过程:1.让一个类 去继承 SqliteOpenHelper (这是一个抽象类):重写该类的构造方法 ;实现未实现的
2022-06-06

Android如何操作SQLite

这篇文章将为大家详细讲解有关Android如何操作SQLite,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。前言SQLite是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据
2023-06-22

android SQLite数据库总结

SQLite SQLite是一种超轻量级的嵌入式数据库,大小只有几百KB,但是其语法支持标准SQL语法,同时还遵循了数据库的ACID事务,所以学过其他数据库的开发人员都很容易掌握其使用。 sql语法就不介绍了,直接看在android中的使用
2022-06-06

Android SQLite数据库存储

前言:Android为了让我们更加方便的管理数据库,专门提供了SQLiteOpenHelper帮助类,借助这个类可以简单的对数据库进行创建和升级。 下面介绍一下SQLiteOpenHelper:(扩展知识) SQLiteOpenHelper
2022-06-06

Android之SQLite数据库使用

文章目录 简介关键类SQLiteOpenHelper创建数据库数据库操作insert增加数据update方法更新记录使用delete方法删除记录使用query方法查询记录 简介 SQLite是Android系统集成的一个轻量
2023-08-18

Android内置SQLite如何使用

Android内置了SQLite数据库,可以通过以下步骤来使用它:1. 创建一个继承自`SQLiteOpenHelper`的子类,它是一个用于管理数据库的帮助类。在该子类中,你可以实现一些回调方法,如`onCreate()`和`onUpgr
2023-08-12

Android中SQLite数据库小结

Android提供了一个名为SQLiteDatabase的类,该类封装了一些操作数据库的API,使用该类可以完成对数据进行添加(Create)、查询(Retrieve)、更新(Update)和删除(Delete)操作(这些操作简称为CRUD
2022-06-06

Android数据存储之SQLite使用

SQLite是一款开源的、嵌入式关系型数据库,第一个版本Alpha发布于2000年。SQLite在便携性、易用性、紧凑性、高效性和可靠性方面有着突出的表现。 在Android中创建的SQLite数据库存储在:/data/data/<包名>/
2022-06-06

基于Android SQLite的使用介绍

在Android平台中,集成了一个嵌入式关系型数据库--SQLite,它支持NULL、INTEGER、REAL(浮点数字)、TEXT(字符串文本)和BLOB(二进制对象)数据类型,虽然只支持五种数据类型,实际上可以接受varchar(n),
2022-06-06

Android中SQLite的作用是什么

这篇文章将为大家详细讲解有关Android中SQLite的作用是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。在Android系统中内置了一个数据库,那就是SQLite。SQlite是一
2023-06-04

Android SQLite详解及示例代码

在Android中使用SQLite数据库的入门指南,打算分下面几部分与大家一起分享, 1、什么是SQLite 2、Android中使用SQLite一、什么是SQLiteSQLite是一款开源的、轻量级的、嵌入式的、关系型数据库。它在2000
2022-06-06

基于Android SQLite的升级详解

做Android应用,不可避免的会与SQLite打交道。随着应用的不断升级,原有的数据库结构可能已经不再适应新的功能,这时候,就需要对SQLite数据库的结构进行升级了。 SQLite提供了ALTER TABLE命令,允许用户重命名或添加新
2022-06-06

Android中的SQLite数据库简介

SQLite简介: SQLite是Android系统采用的一种开源的轻量级的关系型的数据库,Android中允许每个应用程序都拥有自己独立的数据库,每个应用程序的数据库的位置一般在/data/data//data
2022-06-06

Android 中SQLite技术实例详解

Android和iOS的数据库都是用SQLite来实现.一,SQLite数据库简介:轻量级:SQLite数据库是一个轻量级的数据库,适用于少量数据的CURD;文件本质:SQLite数据库支持大部分SQL语法,允许使用SQL语句操作数据库,其
2023-05-31

编程热搜

  • Android:VolumeShaper
    VolumeShaper(支持版本改一下,minsdkversion:26,android8.0(api26)进一步学习对声音的编辑,可以让音频的声音有变化的播放 VolumeShaper.Configuration的三个参数 durati
    Android:VolumeShaper
  • Android崩溃异常捕获方法
    开发中最让人头疼的是应用突然爆炸,然后跳回到桌面。而且我们常常不知道这种状况会何时出现,在应用调试阶段还好,还可以通过调试工具的日志查看错误出现在哪里。但平时使用的时候给你闹崩溃,那你就欲哭无泪了。 那么今天主要讲一下如何去捕捉系统出现的U
    Android崩溃异常捕获方法
  • android开发教程之获取power_profile.xml文件的方法(android运行时能耗值)
    系统的设置–>电池–>使用情况中,统计的能耗的使用情况也是以power_profile.xml的value作为基础参数的1、我的手机中power_profile.xml的内容: HTC t328w代码如下:
    android开发教程之获取power_profile.xml文件的方法(android运行时能耗值)
  • Android SQLite数据库基本操作方法
    程序的最主要的功能在于对数据进行操作,通过对数据进行操作来实现某个功能。而数据库就是很重要的一个方面的,Android中内置了小巧轻便,功能却很强的一个数据库–SQLite数据库。那么就来看一下在Android程序中怎么去操作SQLite数
    Android SQLite数据库基本操作方法
  • ubuntu21.04怎么创建桌面快捷图标?ubuntu软件放到桌面的技巧
    工作的时候为了方便直接打开编辑文件,一些常用的软件或者文件我们会放在桌面,但是在ubuntu20.04下直接直接拖拽文件到桌面根本没有效果,在进入桌面后发现软件列表中的软件只能收藏到面板,无法复制到桌面使用,不知道为什么会这样,似乎并不是很
    ubuntu21.04怎么创建桌面快捷图标?ubuntu软件放到桌面的技巧
  • android获取当前手机号示例程序
    代码如下: public String getLocalNumber() { TelephonyManager tManager =
    android获取当前手机号示例程序
  • Android音视频开发(三)TextureView
    简介 TextureView与SurfaceView类似,可用于显示视频或OpenGL场景。 与SurfaceView的区别 SurfaceView不能使用变换和缩放等操作,不能叠加(Overlay)两个SurfaceView。 Textu
    Android音视频开发(三)TextureView
  • android获取屏幕高度和宽度的实现方法
    本文实例讲述了android获取屏幕高度和宽度的实现方法。分享给大家供大家参考。具体分析如下: 我们需要获取Android手机或Pad的屏幕的物理尺寸,以便于界面的设计或是其他功能的实现。下面就介绍讲一讲如何获取屏幕的物理尺寸 下面的代码即
    android获取屏幕高度和宽度的实现方法
  • Android自定义popupwindow实例代码
    先来看看效果图:一、布局
  • Android第一次实验
    一、实验原理 1.1实验目标 编程实现用户名与密码的存储与调用。 1.2实验要求 设计用户登录界面、登录成功界面、用户注册界面,用户注册时,将其用户名、密码保存到SharedPreference中,登录时输入用户名、密码,读取SharedP
    Android第一次实验

目录