1.SQLite是一款轻量型的数据库是遵守ACID(原子性、一致性、隔离性、持久性)的关联式数据库管理系统,多用于嵌入式开发中。

2.Android平台中嵌入了一个关系型数据库SQLite,和其他数据库不同的是 SQLite存储数据时不区分类型

3.例如一个字段声明为Integer类型,我们也可以将一个字符串存入,一个字 段声明为布尔型,我们也可以存入浮点数

4.除非是主键被定义为Integer,这时只能存储64位整数,SQLite,无需安装 ,是Android平台自带的一个数据库。

  下面让我们看一下对SQLite的实际运用:

  第一布:继承SQLiteOpenHelper创建数据库和表

 package com.example.help;

 import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper; public class Helper extends SQLiteOpenHelper { public Helper(Context context) {
super(context, "db.student", null, 1);
} @Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table student (_id integer primary key autoincrement,name vachar(20),sex vachar(3))");
} @Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { } }

  第二步:新建一个类实现对数据库的增删该查

 package com.example.dao;

 import com.example.help.Helper;

 import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase; public class Dao {
private Helper helper;
private String sex;
public Dao(Context context) {
helper=new Helper(context);
}
public void add(String name,String sex){
SQLiteDatabase db = helper.getWritableDatabase();
db.execSQL("insert into student(name,sex) values(?,?)",new Object[]{name,sex});
db.close();
}
public void delete(String name){
SQLiteDatabase db = helper.getWritableDatabase();
db.execSQL("delete from student where name=?",new Object[]{name});
db.close();
}
public void update(String name,String newsex){
SQLiteDatabase db = helper.getWritableDatabase();
db.execSQL("update student set sex=? where name=?",new Object[]{newsex,name});
db.close();
}
public String find(String name){
SQLiteDatabase db=helper.getReadableDatabase();
Cursor cursor = db.rawQuery("select sex from student where name=?", new String[]{name});
boolean next = cursor.moveToNext();
if(next){
sex = cursor.getString(0);
}
db.close();
cursor.close();
return sex; }
}

  第三步:测试一下sql语句是否正确以及Java语言是否正确

package com.example.test;

import com.example.dao.Dao;

import android.test.AndroidTestCase;
import android.text.TextUtils; public class sqlTest extends AndroidTestCase { public void add(){
Dao dao = new Dao(getContext());
dao.add("张三", "男");
}
public void delete(){
Dao dao = new Dao(getContext());
dao.delete("张三");
}
public void update(){
Dao dao = new Dao(getContext());
dao.update( "张三","女");
}
public void find(){
Dao dao = new Dao(getContext());
String find = dao.find("张三");
if(TextUtils.isEmpty(find)){
System.out.println("没这人");
}else{
System.out.println(find);
}
}
}

但同时需要配置AndroidManifest.xml文件

  同时测试类的操作如下:

  

  

SQLite数据库_实现简单的增删改查的更多相关文章

  1. 用CI框架向数据库中实现简单的增删改查

    以下代码基于CodeIgniter_2.1.3版 用PHP向数据库中实现简单的增删改查(纯代码)请戳 http://www.cnblogs.com/corvoh/p/4641476.html Code ...

  2. nodejs链接mysql数据库,执行简单的增删改查操作

    var mysql = require('mysql'); var conn = mysql.createConnection({ host: 'localhost', user: 'root', p ...

  3. redis数据库安装及简单的增删改查

    redis下载地址:https://github.com/MSOpenTech/redis/releases. 解压之后,运行 redis-server.exe redis.windows.conf  ...

  4. 用PHP向数据库中实现简单的增删改查(纯代码)

    <?php $con = mysql_connect("localhost:3306","root",""); if (!$con) ...

  5. python操作三大主流数据库(2)python操作mysql②python对mysql进行简单的增删改查

    python操作mysql②python对mysql进行简单的增删改查 1.设计mysql的数据库和表 id:新闻的唯一标示 title:新闻的标题 content:新闻的内容 created_at: ...

  6. 使用JDBC分别利用Statement和PreparedStatement来对MySQL数据库进行简单的增删改查以及SQL注入的原理

    一.MySQL数据库的下载及安装 https://www.mysql.com/ 点击DOWNLOADS,拉到页面底部,找到MySQL Community(GPL)Downloads,点击 选择下图中的 ...

  7. python3.6 使用 pymysql 连接 Mysql 数据库及 简单的增删改查操作

    1.通过 pip 安装 pymysql 进入 cmd  输入  pip install pymysql   回车等待安装完成: 安装完成后出现如图相关信息,表示安装成功. 2.测试连接 import ...

  8. SQLite 入门教程(四)增删改查,有讲究 (转)

    转于: SQLite 入门教程(四)增删改查,有讲究 一.插入数据 INSERT INTO 表(列...) VALUES(值...) 根据前面几篇的内容,我们可以很轻送的创建一个数据表,并向其中插入一 ...

  9. Django框架之第二篇--app注册、静态文件配置、form表单提交、pycharm连接数据库、django使用mysql数据库、表字段的增删改查、表数据的增删改查

    本节知识点大致为:静态文件配置.form表单提交数据后端如何获取.request方法.pycharm连接数据库,django使用mysql数据库.表字段的增删改查.表数据的增删改查 一.创建app,创 ...

随机推荐

  1. 软件测试之fault、error和failure的理解

    (1)  Identify the fault : The first element of the array is not looped. "for(int i=x.length-1;i ...

  2. 1715: [Usaco2006 Dec]Wormholes 虫洞

    1715: [Usaco2006 Dec]Wormholes 虫洞 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 501  Solved: 278[Sub ...

  3. 关于VS2013的编码的UI测试。

    1.  打开VS2013,选择文件→新建→项目 2.  弹出的选项左侧选择visual C#中的测试,中间选择框选择编码的UI测试项目,确定后就产生的测试项目. 3.  弹出框选择默认的录制操作巴拉巴 ...

  4. iOS网络编程笔记——GCDAsyncSocket使用

    CocoaAsyncSocket为Mac和iOS提供了易于使用且强大的异步通信库. 简单的Socket通信包括了建连.断开连接.发送socket业务请求.重连这四个基本功能. 1.建立连接:GCDAs ...

  5. MyEclipse10的正确破解方法

    无法转载,故给出原文链接,以供需要者. MyEclipse10的正确破解方法

  6. java学习笔记----数据类型,变量,常量

    一.数据类型 1.基本类型(8种,又称内置数据类型).6种数字类型(byte,short,int,long,float,double),一种字符型(char),一种布尔类型(boolean). byt ...

  7. java学习笔记 --- java基础语法

    一.java标识符,关键字,保留字 1.标识符 用来增强程序阅读性自定义的名字.类名,变量名,方法名等都可以被称为标识符 标识符的组成: 1.由数字(0-9),字母(a-z,A-Z),下划线(_),美 ...

  8. 结队编程study

    ##今天针对study进行结队编程,我和搭档张佳慧刚开始误认为SystemBarTintManager,baseActivity是personalActivity跳转的下一个界面,因为这个代码个人中心 ...

  9. Think In Java_读书笔记_042516

    面向对象程序设计方式: 1, 万物皆对象. 2,程序是对象的集合,他们通过发送消息来告知彼此所要做的.(个人理解,比如你调用方法的时候需要去调用某个对象的某个方法,必须传相应的参数,这些参数列表就相当 ...

  10. python学习随笔(三)

    在linux中输入密码,我们是看不到的,如果在python中直接输入是可以看的到的,执行以下程序 #!/usr/bin/env python username = raw_input("us ...