Android复习07【创建数据库、insert()插入数据、查看数据库、根据列索引获取参数值、根据列名-返回索引、增删改查数据、数据分页、修改表结构、Room框架】
2020-04-09-星期四-第八周
目 录
创建数据库
insert()方法
查看数据库(Save as保存)
菜鸟教程---SQLite数据库
根据 列索引 获取 参数值
列比较多---根据列名,返回索引
删除数据
query
简单方式(增删改查)
插入数据、删除数据、修改数据
查询数据
数据分页(偏移量、取得数据的数量)、查询记录数
修改数据表结构
MyHelp.java代码
android-Room框架
Room-3大组件
MainActivity.java代码
期末考试内容
创建数据库
数据库的增删改查
创建数据库
insert()方法
查看数据库(Save as保存)
菜鸟教程---SQLite数据库
6.3.1 数据存储与访问之——初见SQLite数据库
https://www.runoob.com/w3cnote/android-tutorial-sqlite-intro.html
根据 列索引 获取 参数值
列比较多---根据列名,返回索引
删除数据
query
简单方式(增删改查)
插入数据、删除数据、修改数据
查询数据
数据分页(偏移量、取得数据的数量)、查询记录数
修改数据表结构
MyHelp.java代码
package cn.wangzg.course0802;import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;import androidx.annotation.Nullable;/*** Time: 2020/4/9* Author: wangzhiguo* Description: 功能描述*/
public class MyHelper extends SQLiteOpenHelper {public MyHelper(@Nullable Context context) {super(context, "mydb.db", null, 2);//创建数据库}@Overridepublic void onCreate(SQLiteDatabase db) {//创建数据表,只有第一次时执行db.execSQL("create table person(id integer primary key autoincrement," +"name varchar(20),age int,zy);");System.out.println("----------111111-----------");}@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {System.out.println("----------" + newVersion + "-----------");db.execSQL("alter table person add column zy;");}
}
android-Room框架
Google官方文档
https://developer.android.google.cn/training/data-storage/room
Room-3大组件
MainActivity.java代码
package cn.wangzg.course0802;import androidx.appcompat.app.AppCompatActivity;
import androidx.room.Room;import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;import java.util.List;public class MainActivity extends AppCompatActivity {private MyHelper helper;private TextView tvSqlite;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);helper = new MyHelper(this);tvSqlite = findViewById(R.id.tv_sqlite);AppDatabase db = Room.databaseBuilder(getApplicationContext(),AppDatabase.class, "dbroom.db").allowMainThreadQueries().build();User user1 = new User();user1.firstName = "aaa";user1.lastName = "bbb";user1.uid = 3;User user2 = new User();user2.firstName = "ccc";user2.lastName = "ddd";user2.uid = 2;db.userDao().insertAll(user1, user2);List<User> users = db.userDao().getAll();for (User u : users) {System.out.println(u.firstName + "---" + u.lastName);}}public void btnInsert(View view) {SQLiteDatabase db = helper.getWritableDatabase();//ContentValues等同于MapContentValues values = new ContentValues();values.put("name", "aaaa");//key:必须为数据表的列名values.put("age", 23);//nullColumnHack:插入时需要忽略的列db.insert("person", null, values);}public void btnUpdate(View view) {SQLiteDatabase db = helper.getWritableDatabase();ContentValues values = new ContentValues();//values.put("name","aaaa");values.put("age", 25);/*** update table* set xxx=?,xxx=? --values* where xxx=?*/db.update("person", values, "name=?", new String[]{"aaaa"});}public void btnDelete(View view) {SQLiteDatabase db = helper.getWritableDatabase();/*** delete table* where xxx=?*/db.delete("person", "age<?", new String[]{"30"});}public void btnQuery(View view) {SQLiteDatabase db = helper.getReadableDatabase();/*** select ** from table* where name=? and age=?* group by* having* order*/Cursor cursor = db.query("person", null, null, null,null, null, null);if (cursor == null) return;int nameIndex = cursor.getColumnIndex("name");int ageIndex = cursor.getColumnIndex("age");while (cursor.moveToNext()) {String name = cursor.getString(nameIndex);int age = cursor.getInt(ageIndex);tvSqlite.setText(name + " " + age);//System.out.println(name);}cursor.close();}
}
期末考试内容
创建数据库
数据库的增删改查
Android复习07【创建数据库、insert()插入数据、查看数据库、根据列索引获取参数值、根据列名-返回索引、增删改查数据、数据分页、修改表结构、Room框架】相关推荐
- Android 中编写一个简易购物车,商品包括商品名称,单价,数量,可以对商品进行增删改查功能。(ArrayList,SQLite)
Android 中编写一个简易购物车,商品包括商品名称,单价,数量,可以对商品进行增删改查功能.(ArrayList,SQLite) 布局(activity_main.xml): <?xml v ...
- Zookeeper 客户端API调用示例(基本使用,增删改查znode数据,监听znode,其它案例,其它网络参考资料)
9.1 基本使用 org.apache.zookeeper.Zookeeper是客户端入口主类,负责建立与server的会话 它提供以下几类主要方法 : 功能 描述 create 在本地目录树中创建 ...
- Mysql数据库和表的增删改查以及数据备份恢复
数据库 查看所有数据库 show databases; 使用数据库 use 数据库名; 查看当前使用的数据库 select database(); 创建数据库 create database 数据库名 ...
- 【Python数据处理篇——DataFrame数据准备】DataFrame的创建、增删改查、数据导入等
欢迎访问我搞事情的[知乎账号]:Coffee 以及我的[B站漫威剪辑账号]:VideosMan 若我的笔记对你有帮助,请用小小的手指,点一个大大的赞哦. 关于DataFrame的相关知识,我还进行了汇 ...
- Web SQL介绍,web sql中增删改查、数据存储位置、运行脚本、建表建库
Web SQL: Web SQL是一种简单的存在服务器中的数据库,运行在javascript脚本中,其数据储存在计算机Application中Web SQL中. web sql提供了三个核心方法: 1 ...
- VS2015 MFC对access2010数据库的增删改查,子对话框修改,双击修改,combobox查询。
VS2015 MFC对access2010数据库的增删改查 特点:1,把access内容导入list control后,可以实现双击修改list control的同时,修改数据库,也可以通过子弹窗修改 ...
- 001mongodb数据库介绍002mongodb的增删改查003数据导入导出
传统关系型数据库无法应用巨大的数据存储和处理.所以非关系型数据库得以发展. mogodb是一个介于关系数据库和菲关系数据库之间的产品,是非关系型数据库中功能最丰富,最像关系数据库的产品. mogoDB ...
- 第三讲:tapestry增删改查---查询数据
2019独角兽企业重金招聘Python工程师标准>>> 思路:使用loop组件循环显示每条增加的数据,添加用户使用了pagelink. 在com.tapestry.app.pages ...
- 【学亮IT手记】SpringMVC增删改查+map数据返回Controller层代码示例
@RestController @RequestMapping("/brand") public class BrandController {@Referenceprivate ...
- day38 mycql 初识概念,库(增删改查),表(增删改)以及表字段(增删改查),插入更新操作...
在Navicat中把已经生成的表逆向成模型 数据库上,右键-逆向数据库到模型 ego笔记: 增删改查 文件夹(库)增create database day43 charset utf8;改alter ...
最新文章
- 【ACM】二叉搜索树(Binary Search Tree /BS Tree) 小结
- JVM-05垃圾收集Garbage Collection(中)【垃圾收集算法】
- CVPR 2020 《Context-Aware Group Captioning via Self-Attention and Contrastive Features》论文笔记(数据集)
- 什么是 SAP Core Data Service Annotation Propagation
- 新字符设备驱动实验(自动分配设备号、自动创建应用层设备节点、新字符设备注册到内核的结构体)
- 机器学习数据包之numpy
- 能用计算机解决的问题十个,计算机常见问题及解决方法,计算机十项常见故障...
- ActiveMQ持久化方式
- C语言函数大全 chm含示例
- AD9833数字信号发生器模块
- java工作流(原生)
- 底层网工、0基础、记性差,学习CCIE/HCIE,到底是啥体验?
- Windows Server 无法启用 网络发现
- LINUX环境下安装MySQL数据库
- 抖音测试美甲软件,抖音最火的美甲
- 客房预订管理系统(一)
- Spring中Environment的使用
- 电脑的wifi天线原理_详解无线路由器天线的原理
- 复习汇总vue知识点
- Spark中distinct、reduceByKey和groupByKey的区别与取舍
热门文章
- Dreanmwear能做php模板吗,PHPword模板的使用
- mysql异地备份_MySQL数据库异地备份与还原方法
- linux无法打开共享对象文件或目录,linux - libmodbus.so.5:无法打开共享对象文件:没有这样的文件或目录 - 堆栈内存溢出...
- redis php操作日志,php-redis笔记
- Java 100(三)
- java string问题_Java关于String的问题?
- 美国密西西比州立大学招收机器学习、数据挖掘方向全奖博士生
- KDD 2019 | 使用神经网络为A*搜索算法赋能:以个性化路径推荐为例
- ACL 2018论文解读 | 基于路径的实体图关系抽取模型
- HDU1525 Euclid's Game 【欧几里得博弈】