1.数据库创建

public class DatabaseHolder extends SQLiteOpenHelper {//创建数据库school。dbpublic DatabaseHolder( Context context) {super(context,"school.db",null,1);}//数据库里创建表@Overridepublic void onCreate(SQLiteDatabase db) {String sql= "create table " + Cansetanse.Student.TABLE_NAME + " (" + Cansetanse.Student.ID + " integer primary key autoincrement, " +Cansetanse.Student.COOL_NAME + " text," +Cansetanse.Student. COOL_AGE + " integer," +Cansetanse.Student. COOL_MALE + " bool)";db.execSQL(sql);}//更新数据库@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {String sqll= "DROP TABLE IF EXISTS " + Cansetanse.Student.TABLE_NAME;db.execSQL(sqll);onCreate(db);}
}

2.数据库中读写

public class StudentDao {DatabaseHolder helpor;public StudentDao(Context context){helpor= new DatabaseHolder(context);}public boolean crat(Student student){//增加数据SQLiteDatabase db=helpor.getWritableDatabase();ContentValues values=new ContentValues();values.put("name",student.getName());values.put("age",student.getAge());values.put("male",student.isMale());long i=  db.insert(Cansetanse.Student.TABLE_NAME,null,values);return i>-1 ? true : false;}//读取数据public List<Student>  readAll() {List<Student> result = new ArrayList<>();SQLiteDatabase db = helpor.getReadableDatabase();Cursor query = db.query(Cansetanse.Student.TABLE_NAME, null, null, null, null, null, null);if (query.moveToFirst()) {do {int id = query.getInt(0);String name = query.getString(1);int age = query.getInt(2);boolean male = query.getInt(3) == 1 ? true : false;result.add(new Student(id, name, age, male));} while (query.moveToNext());} else {return null;}return result;}
}

3.MainActivity中实现

public class MainActivity extends AppCompatActivity {EditText et1,et2;Button bt1,bt2;Switch aSwitch;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);et1=findViewById(R.id.ed_1);et2=findViewById(R.id.ed_2);bt1=findViewById(R.id.btn);bt2=findViewById(R.id.btn2);aSwitch=findViewById(R.id.switch1);//写数据bt1.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {Student student=new Student(1,et1.getText().toString(),Integer.parseInt(et2.getText().toString()),aSwitch.isChecked());StudentDao dao=new StudentDao(MainActivity.this);boolean su=dao.crat(student);if (su){Toast.makeText(MainActivity.this,"成功",Toast.LENGTH_SHORT).show();}else {Toast.makeText(MainActivity.this,"No",Toast.LENGTH_SHORT).show();}}});//读取数据bt2.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {StudentDao studentDao=new StudentDao(MainActivity.this);List<Student> result = studentDao.readAll();Toast.makeText(MainActivity.this,result.toString(),Toast.LENGTH_SHORT).show();}});}
}

4.效果图

5.Student部分
package com.example.sqllite.model;public class Student {private int id;private String name ;private int age;private boolean male;public Student(int id, String name, int age, boolean male) {this.id = id;this.name = name;this.age = age;this.male = male;}public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public boolean isMale() {return male;}public void setMale(boolean male) {this.male = male;}@Overridepublic String toString() {return "Student{" +"id=" + id +", name='" + name + '\'' +", age=" + age +", male=" + male +'}';}
}
6.Cansetanse部分
package com.example.sqllite.dp;public class Cansetanse {public static class Student{public static final String TABLE_NAME = "student";public static final String COOL_NAME = "name";public static final String ID = "id";public static final String COOL_AGE = "age";public static final String COOL_MALE = "bool";}
}

安卓Android sqllite实现保存数据和读数据相关推荐

  1. 用java实现在txt文本中写数据和读数据

    向文本中写数据,一般这些数据我们用来做自动化测试.通过我们制定的一些生成数据的规则,能够快速写数据到文本中. 下面是写数据到txt文本(当然我们可以根据自己的需要写到doc.docx.xlx.xlsx ...

  2. 安卓android studio传感器编程入门demo读懂就通1分钟跑通掌握最多需要三十分钟

    ​ xml部分 自写的文件读取.存储.写入字符串 的类FileUtils.java MainActivity文件 附:完整代码(如果看上图不能解决问题的话,可以看看) Android获取手机传感器数据 ...

  3. 安卓 Android 下载网络图片保存到本地

    通过网络地址获取网络图片,点击下载将图片显示出来,然后点击图片将图片保存到本地. 首先需要在manifest上添加一些权限: <!-- 访问网络的权限 --> <uses-permi ...

  4. 59.排序好的大数据创建索引文件,并实现大文件的二分查找,根据索引百万数据秒读数据...

    创建索引 1 //创建索引 2 struct index 3 { 4 //保存每行偏移的位置 5 int *pindex; 6 //文件的总长度 7 int length; 8 }allindex;/ ...

  5. STM32 I2C通信操作24C02写数据、读数据

    202007每月一练 的板子上还有一个24C02芯片没有写教程,今天介绍一下24C02这个芯片的驱动方法. 串行EEPROM 24CXX是基于I2C总线的存储器件,遵循二线制协议,IIC总线上可以外挂 ...

  6. Android 蓝牙4.0(BLE)开发实现对蓝牙的写入数据和读取数据

    由于最近学校组织了一个移动APP(安卓)设计大赛,自己也学习安卓有一段时间了,就跟同学商量一起去参加试试,一拍即合,然后我们就开始想idea,因为最近可穿戴设备比较火,我们也就想试试.经过商量,我负责 ...

  7. Android 保存QQ密码(数据存储:文件存储、SharedPreferences)

    源码[工程文件]:https://gitee.com/lwx001/saveQQ MainActivity.java: package cn.lwx.saveqq;import android.os. ...

  8. Android 使用Application类保存应用的全局数据

    在实际应用我们经常需要对数据进行交互与保存,但Intent中默认的方法对传输数据是有类型限制的,当我们需要传输或保存一个复杂的泛型数据时,使用Application是一个很好的解决办法. 顾名思义,A ...

  9. android中保存多行数据,Android使用SQLite数据库存数数据

    Android使用SQLite数据库存数数据 前面我们介绍了用 SharedPreferences 和文件存储信息的方法,但是当频繁大量地使用数据存储时,就要用到数据库来管理信息数据. 在 Andro ...

最新文章

  1. docker load 出错 open /var/lib/docker/tmp/docker-import-837327978/bin/json: no such file or directory
  2. 什么是token?精简摘抄·~
  3. 湖南大学超级计算机中心 舒教授,湖南大学岳麓书院哲学系舒远招教授应邀来我院讲学...
  4. [学习笔记]Pollard-Rho
  5. java 中对象引用,以及对象赋值
  6. linux mysql编译安装mysql_【MySQL安装】Linux下安装MySQL(预编译)
  7. sctp和tcp的区别
  8. 沉浸式视频技术应用与挑战
  9. 您的Apache Camel应用程序现在包括现成的文档
  10. win7系统定时删除数据的批处理命令_使用bat批处理命令清理windows7系统垃圾文件...
  11. CentOS 6.7安装Spark 1.5.2
  12. atom之插件安装及相关
  13. static RMQ
  14. 阿里云ICON全部下载
  15. 阿里RocketMQ创始人首次分享出这份RocketMQ技术内木神级架构手册
  16. 周记--听平凡人说故事
  17. muduo实现finger服务
  18. AI绘画网站最全收集!!
  19. Linux 文件内容查看
  20. perl与c相互调用

热门文章

  1. 我的世界java版刷雪球机,我的世界手机版怎么刷雪球 无限刷雪球机
  2. matlab傅里叶级数展开
  3. LayoutManager android.support.v7.widget.LinearLayoutManager@6eb337f is already attached to a Recycl
  4. C++ QT开发人机象棋(剪枝算法)
  5. JDBC——商品品牌数据的增删改查操作
  6. 进程冻结(freezing of task)
  7. 【一起进大厂】7天掌握react基础系列(1)
  8. 用爬虫批量采集淘宝宝贝评论
  9. Qt纯代码实现菜单栏、工具栏、状态栏
  10. [HTML5]配置Ngnix服务器支持manifest