Android SQL语句实现数据库的增删改查
本文介绍android中的数据库的增删改查
复习sql语法:
* 增
insert into info (name,phone) values ('wuyudong','111')
* 删
delete from person where name = 'wuyudong'
* 改
update person set number='119' where name='wuyudong'
* 查
select * from person
select * from person where name='wuyudong'
数据库文件是在 /data/data/包名/databases/xxx.db
下面使用代码完成相关的操作
首先定义一个Person类
package com.wuyudong.db.domain;public class Person {private int id;private String name;private String number;public Person() {}public Person(int id, String name, String number) {this.id = id;this.name = name;this.number = number;}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 String getNumber() {return number;}public void setNumber(String number) {this.number = number;}}
接着实现相关操作的代码:
package com.wuyudong.db.dao;import java.util.ArrayList; import java.util.List;import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase;import com.wuyudong.db.PersonSQLiteOpenHelper; import com.wuyudong.db.domain.Person;public class PersonDao {private PersonSQLiteOpenHelper helper;public PersonDao(Context context) {helper = new PersonSQLiteOpenHelper(context);}/*** 添加一条记录到数据库* * @param name* 姓名* @param number* 电话*/public void add(String name, String number) {SQLiteDatabase db = helper.getWritableDatabase();db.execSQL("insert into person (name,number) values (?,?)",new Object[] { name, number });db.close();}/*** 查询记录是否存在* * @param name* 姓名 return true存在, false不存在*/public boolean find(String name) {SQLiteDatabase db = helper.getReadableDatabase();Cursor cursor = db.rawQuery("select * from person where name=?",new String[] { name });boolean result = cursor.moveToNext();cursor.close();db.close();return result;}/*** * @param name* 要修改的人的姓名* @param newnumber* 新的号码*/public void update(String name, String newnumber) {SQLiteDatabase db = helper.getReadableDatabase();db.execSQL("update person set number=? where name=?", new Object[]{newnumber,name});db.close();}/*** 删除一条记录* @param name */public void delete(String name) {SQLiteDatabase db = helper.getReadableDatabase();db.execSQL("delete from person where name=?", new Object[]{name});db.close();}/*** 返回全部的数据库信息* @return*/public List<Person> findAll() {List<Person> persons = new ArrayList<Person>();SQLiteDatabase db = helper.getReadableDatabase();Cursor cursor = db.rawQuery("select * from person", null);while(cursor.moveToNext()){int id = cursor.getInt(cursor.getColumnIndex("id"));String name = cursor.getString(cursor.getColumnIndex("name"));String number = cursor.getString(cursor.getColumnIndex("number"));Person person = new Person(id, name, number);persons.add(person);}cursor.close();db.close();return persons;}}
完整的测试代码如下:
package com.wuyudong.db.test;import java.util.List;import com.wuyudong.db.PersonSQLiteOpenHelper; import com.wuyudong.db.dao.PersonDao; import com.wuyudong.db.domain.Person;import android.database.sqlite.SQLiteDatabase; import android.test.AndroidTestCase;public class TestPersonDB extends AndroidTestCase {public void testCreateDB() throws Exception {PersonSQLiteOpenHelper helper = new PersonSQLiteOpenHelper(getContext());SQLiteDatabase db = helper.getWritableDatabase();}public void testAdd() throws Exception {PersonDao dao = new PersonDao(getContext());dao.add("wuyudong", "666");}public void testFind() throws Exception {PersonDao dao = new PersonDao(getContext());boolean result = dao.find("zhangsan");assertEquals(true, result);}public void testUpdate() throws Exception {PersonDao dao = new PersonDao(getContext());dao.update("zhangsan", "655");}public void testDelete() throws Exception {PersonDao dao = new PersonDao(getContext());dao.delete("zhangsan");}public void testFindall() throws Exception {PersonDao dao = new PersonDao(getContext());List<Person> persons = dao.findAll();for (Person person : persons) {System.out.println(person.toString());}} }
转载于:https://www.cnblogs.com/wuyudong/p/5563848.html
Android SQL语句实现数据库的增删改查相关推荐
- TSQL语句-对数据库的增删改查
创建,修改,删除 数据库
- visual studio2019连接SQL Server数据库,增删改查详细教程(C#代码)
visual studio2019连接SQL Server数据库,增删改查详细教程(C#代码) 工具: 1.Visual Studio 2019 2.SQL Server数据库(我使用的2008) 操 ...
- php修改数据库字段内容,php对数据库的增删改查操作
在我看来数据库是个既复杂又高深莫测的东西,但百分之八十左右的程序员都不需要去精通他,对于我们前端开发来说,只要会数据库的增删改查语句就差不多了.首先我们来说说sql的增删改查语句. 一.增删改查 插入 ...
- 通过Loadruner对mysql数据库进行增删改查
通过Loadruner对mysql数据库进行增删改查 操作mysql数据库,是在实现mysql数据源配置的基础上操作,可先阅读:loadrunner参数化使用mysql数据源失败解决方法 写之前先理一 ...
- C#语言连接Mysql数据库实现增删改查
C#语言连接Mysql数据库实现增删改查 实现效果如图 在此之前先下载一个mysql.dll 库 如下 链接:https://pan.baidu.com/s/17Nv_1W3KbXfWgdOvWf_S ...
- python操作mysql数据库(增、删、改、查)_python对 MySQL 数据库进行增删改查的脚本...
# -*- coding: utf-8 -*- import pymysql import xlrd # import codecs #连接数据库 conn = pymysql.connect(hos ...
- Mybatis学习笔记(二) 之实现数据库的增删改查
开发环境搭建 mybatis 的开发环境搭建,选择: eclipse j2ee 版本,mysql 5.1 ,jdk 1.7,mybatis3.2.0.jar包.这些软件工具均可以到各自的官方网站上下载 ...
- ❤️使用Mybatis对数据库进行增删改查!!!
❤️使用Mybatis对数据库进行增删改查!!! ❤️namespace的用法 namespace中的包名要和接口一致: ❤️select用法 id:就是对应的namespace的方法名 result ...
- 动态网站作业4-JSP中实现数据库的增删改查的操作
动态网站作业4-JSP中实现数据库的增删改查的操作 用Statement向数据库中添加元素 1.创建JavaBean–UserBean package com.media.bean;public cl ...
最新文章
- 启动MySQL:net start mysql出现问题+本地Mysql忘记密码的修改方法
- 无事“自动驾驶”,有事“辅助驾驶”?
- mongo c#驱动介绍操作
- mysql 中文乱码 或 问号
- 如何自定义容器网络?- 每天5分钟玩转 Docker 容器技术(33)
- linux代码诊断有没有link,Linux下判断网线是否插入的代码
- windows2003——工作组和域控制器
- beforeunload中阻止提示关闭_React 系统中,在离开编辑页面前做提示
- 图书isbn批量生成一维条码
- Http Status 500
- Android 9.0 http无法访问网络问题
- php数组题目以及答案,PHP数组面试考题
- Android自定义控件:NestedScrolling实现仿魅族flyme6应用市场应用详情弹出式layout
- u云支付 php05,优云易支付-免签约支付平台-彩虹易支付,1分钟快速接入支付功能...
- Ubuntu 18.04 锁屏 快捷键 无效
- dw常用标签_dreamweaver中常用到的标签及含义
- 营销老炮儿征战史:重视终端
- 手把手教会OpenGL之纹理贴图、包含纹理载入、纹理过滤、边界处理、纹理参数设置(入门级别案例,棋盘)
- 全景拍摄—相机设置教程
- python笔记(tornado初识)
热门文章
- Framework学习(一)深入Android 系统架构
- 查询端口号是否被占用指令
- 【java】浅析JDK中ServiceLoader的源码
- 【算法】剑指 Offer 42. 连续子数组的最大和 【重刷】
- 【算法】剑指 Offer 59 - II. 队列的最大值
- 【Elasticsearch】请在64位平台上使用Lucene的MMapDirectory
- 【ElasticSearch】Es 源码之 Discovery DiscoveryModule 源码解读
- 【Flink】Flink 报错 Hash join exceeded Too many duplicate keys
- 【Spring】Spring hibernate JSR-303 Validator 自定义参数校验器
- 90-50-010-源码-hbase的rowkey设计