布局:

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="net.bwie.localdata.MainActivity"> <Button
android:id="@+id/insert_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="插入"/> <Button
android:id="@+id/delete_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="删除"/> <Button
android:id="@+id/update_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="修改"/>
<Button
android:id="@+id/query_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="查询"/> </LinearLayout>

Activivy:

 public class MainActivity extends AppCompatActivity implements View.OnClickListener {

     protected Button mInsertBtn;
protected Button mDeleteBtn;
protected Button mUpdateBtn;
protected Button mQueryBtn;
private DBHelper mHelper;
private SQLiteDatabase mDatabase; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.setContentView(R.layout.activity_main);
initView(); mHelper = new DBHelper(this);
mDatabase = mHelper.getWritableDatabase();
} private void initView() {
mInsertBtn = (Button) findViewById(R.id.insert_btn);
mInsertBtn.setOnClickListener(MainActivity.this);
mDeleteBtn = (Button) findViewById(R.id.delete_btn);
mDeleteBtn.setOnClickListener(MainActivity.this);
mUpdateBtn = (Button) findViewById(R.id.update_btn);
mUpdateBtn.setOnClickListener(MainActivity.this);
mQueryBtn = (Button) findViewById(R.id.query_btn);
mQueryBtn.setOnClickListener(MainActivity.this);
} @Override
public void onClick(View view) {
if (view.getId() == R.id.insert_btn) {
insertData();
} else if (view.getId() == R.id.delete_btn) {
deleteData();
} else if (view.getId() == R.id.update_btn) {
updateData();
} else if (view.getId() == R.id.query_btn) {
queryData();
}
} // 表名
// null。数据库如果插入的数据为null,会引起数据库不稳定。为了防止崩溃,需要传入第二个参数要求的对象
// 如果插入的数据不为null,没有必要传入第二个参数避免崩溃,所以为null
// 插入的数据
private void insertData() {
ContentValues values = new ContentValues();
values.put(DBHelper.NAME, "鹿晗");
values.put(DBHelper.AGE, 17);
mDatabase.insert(DBHelper.TABLE_NAME, null, values);
Toast.makeText(this, "插入成功", Toast.LENGTH_SHORT).show();
} // 表名
// 删除条件
// 满足删除的值
private void deleteData() {
int count = mDatabase.delete(DBHelper.TABLE_NAME, DBHelper.NAME + " = ?", new String[]{"鹿晗"});
Toast.makeText(this, "删除数量:"+count, Toast.LENGTH_SHORT).show();
} // 表名
// 修改后的数据
// 修改条件
// 满足修改的值
private void updateData() {
ContentValues values = new ContentValues();
values.put(DBHelper.NAME, "小茗同学");
values.put(DBHelper.AGE, 18);
int count = mDatabase
.update(DBHelper.TABLE_NAME, values, DBHelper.NAME + " = ?", new String[]{"鹿晗"});
Toast.makeText(this, "修改成功:" + count, Toast.LENGTH_SHORT).show();
} // 表名
// 查询字段
// 查询条件
// 满足查询的值
// 分组
// 分组筛选关键字
// 排序
private void queryData() {
Cursor cursor = mDatabase.query(DBHelper.TABLE_NAME,
new String[]{DBHelper.NAME, DBHelper.AGE},
DBHelper.AGE + " > ?",
new String[]{"16"},
null,
null,
DBHelper.AGE + " desc");// 注意空格! int nameIndex = cursor.getColumnIndex(DBHelper.NAME);
int ageIndex = cursor.getColumnIndex(DBHelper.AGE);
while (cursor.moveToNext()) {
String name = cursor.getString(nameIndex);
String age = cursor.getString(ageIndex); Log.d("1507", "name: " + name + ", age: " + age);
} } }

创建数据库:

 public class DBHelper extends SQLiteOpenHelper {

     // 数据库文件名
public static final String DB_NAME = "my_database.db";
// 数据库表名
public static final String TABLE_NAME = "t_person";
// 数据库版本号
public static final int DB_VERSION = 1; public static final String NAME = "name";
public static final String AGE = "age"; public DBHelper(Context context) {
super(context, DB_NAME, null, DB_VERSION);
} // 当数据库文件创建时,执行初始化操作,并且只执行一次
@Override
public void onCreate(SQLiteDatabase db) {
// 建表
String sql = "create table " +
TABLE_NAME +
"(_id integer primary key autoincrement, " +
NAME + " varchar, " +
AGE + " varchar"
+ ")"; db.execSQL(sql);
} // 当数据库版本更新执行该方法
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { }
}

SQLite 数据库增删改查的更多相关文章

  1. (转)SQLite数据库增删改查操作

    原文:http://www.cnblogs.com/linjiqin/archive/2011/05/26/2059182.html SQLite数据库增删改查操作 一.使用嵌入式关系型SQLite数 ...

  2. Android SQLite 数据库 增删改查操作

    Android SQLite 数据库 增删改查操作 转载▼ 一.使用嵌入式关系型SQLite数据库存储数据 在Android平台上,集成了一个嵌入式关系型数据库--SQLite,SQLite3支持NU ...

  3. IOS sqlite数据库增删改查

    1.简单介绍 简单封装sqlite数据库操作类 BaseDB 用于完毕对sqlite的增删改查.使用前先导入libsqlite3.0.dylib库 2.BaseDB.h // // BaseDB.h ...

  4. 使用C#书写SQLite数据库增删改查语句(以及插入byte[]时遇到的问题总结)

    在没有使用SQLite这种轻量级的数据库之前,只使用过Sqlserver2008进行数据的增删改查,公司使用的是大型的ORACLE数据库,还没有真正的会使用它.那时候觉得数据库很庞大,然而遇到SQLi ...

  5. SQLite数据库增删改查操作

    一.使用嵌入式关系型SQLite数据库存储数据 在Android平台上,集成了一个嵌入式关系型数据库——SQLite,SQLite3支持NULL.INTEGER.REAL(浮点数字).TEXT(字符串 ...

  6. Android SQLite数据库增删改查操作

    一.使用嵌入式关系型SQLite数据库存储数据 在Android平台上,集成了一个嵌入式关系型数据库——SQLite,SQLite3支持NULL.INTEGER.REAL(浮点数字). TEXT(字符 ...

  7. SQLite数据库增删改查

    一:SQLite数据库简介: SQLite是一种轻量级的关系型数据库,官网:http://www.sqlite.org/. SQLite数据库文件存在于移动设备的一下目录中:data->data ...

  8. 通过API函数来控制SQLite数据库增删改查

    person类属性有Intenger id,String name,Intenger  age,相应的构造方法和set get方法. package com.xh.tx.dao; import and ...

  9. 通过Sql语句控制SQLite数据库增删改查

    person类属性有Intenger id,String name,Intenger  age,相应的构造方法和set get方法. package com.xh.tx.dao; import jav ...

  10. 转:ios Sqlite数据库增删改查基本操作

    研究了几天的数据库,终于把它给搞出来了.Sqlite是ios上最常用的数据库之一,大家还是有必要了解一下的.这是仿照网上的一个例子做的,有些部分写的不好,我稍作了修改,以讲解为主,主要让大家能够明白如 ...

随机推荐

  1. Shell 流程控制 if while for

    if else if if 语句语法格式: if condition then command1 command2 ... commandN fi 写成一行(适用于终端命令提示符): if [ $(p ...

  2. 使用控制台程序搭建WebApi

    原文参考: ASP.NET Web Api 2.2: Create a Self-Hosted OWIN-Based Web Api from Scratch 新建控制台程序,引入Owin包 PM&g ...

  3. sshd服务防止暴力破解

    sshd防止暴力破解几种方式: 1.密码足够复杂 2.修改默认端口号 3.不适用root用户名登录. #是否可以禁止root身份登录?不行,因为有些程序需要使用root什么登录,另外判断一个用户是不是 ...

  4. windows10 设置软件开机启动

    在 C:\Users\your_name\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup 在这个目录下,新建你想开机启动的软 ...

  5. Spring总结 1.装配bean

    本随笔内容要点如下: 依赖注入 Spring装配bean的方式 条件化装配 一.依赖注入 我理解的依赖注入是这样的:所谓的依赖,就是对象所依赖的其他对象.Spring提供了一个bean容器,它负责创建 ...

  6. Spring事务传播属性介绍(一).required 和 reuqires_new

    Mandatory.Never.Not_Support传播属性分析传送门:https://www.cnblogs.com/lvbinbin2yujie/p/10260030.html Nested传播 ...

  7. Docker 入门 之基本命令

    3 Docker 入门 首先确保docker 已成功安装在Linux 或windows 系统中 我们可以使用 docker info 查看docker是否成功安装和正常运行 运行我们第一个docker ...

  8. C# Azure-让http自动跳转到https链接

    在项目的web.config下面加上下面的配置: <rewrite> <rules> <clear /> <rule name="Redirect ...

  9. [转]magento性能优化的教程(非常详细)

    本文转自:https://www.sypopo.com/post/kMQE8dERoV/ 前面优化 mod_deflate模块,将text. css 和 javascript 先进行压缩再发送到浏览器 ...

  10. SQL Server T—SQL 视图 事务

    一 视图 视图是存储在数据库中的查询的SQL 语句, 视图是从一个或多个表或视图中导出的表,是一张虚表,只能对视图进行查询,不能增.删.改. 对视图进行修改要在相应的基本表中进行修改,修改会自动的反应 ...