SQLite 数据库增删改查

布局:

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout
 3     xmlns:android="http://schemas.android.com/apk/res/android"
 4     xmlns:app="http://schemas.android.com/apk/res-auto"
 5     xmlns:tools="http://schemas.android.com/tools"
 6     android:layout_width="match_parent"
 7     android:layout_height="match_parent"
 8     android:orientation="vertical"
 9     tools:context="net.bwie.localdata.MainActivity">
10
11     <Button
12         android:id="@+id/insert_btn"
13         android:layout_width="wrap_content"
14         android:layout_height="wrap_content"
15         android:text="插入"/>
16
17     <Button
18         android:id="@+id/delete_btn"
19         android:layout_width="wrap_content"
20         android:layout_height="wrap_content"
21         android:text="删除"/>
22
23     <Button
24         android:id="@+id/update_btn"
25         android:layout_width="wrap_content"
26         android:layout_height="wrap_content"
27         android:text="修改"/>
28     <Button
29         android:id="@+id/query_btn"
30         android:layout_width="wrap_content"
31         android:layout_height="wrap_content"
32         android:text="查询"/>
33
34
35 </LinearLayout>

Activivy:

  1 public class MainActivity extends AppCompatActivity implements View.OnClickListener {
  2
  3     protected Button mInsertBtn;
  4     protected Button mDeleteBtn;
  5     protected Button mUpdateBtn;
  6     protected Button mQueryBtn;
  7     private DBHelper mHelper;
  8     private SQLiteDatabase mDatabase;
  9
 10     @Override
 11     protected void onCreate(Bundle savedInstanceState) {
 12         super.onCreate(savedInstanceState);
 13         super.setContentView(R.layout.activity_main);
 14         initView();
 15
 16         mHelper = new DBHelper(this);
 17         mDatabase = mHelper.getWritableDatabase();
 18     }
 19
 20
 21     private void initView() {
 22         mInsertBtn = (Button) findViewById(R.id.insert_btn);
 23         mInsertBtn.setOnClickListener(MainActivity.this);
 24         mDeleteBtn = (Button) findViewById(R.id.delete_btn);
 25         mDeleteBtn.setOnClickListener(MainActivity.this);
 26         mUpdateBtn = (Button) findViewById(R.id.update_btn);
 27         mUpdateBtn.setOnClickListener(MainActivity.this);
 28         mQueryBtn = (Button) findViewById(R.id.query_btn);
 29         mQueryBtn.setOnClickListener(MainActivity.this);
 30     }
 31
 32     @Override
 33     public void onClick(View view) {
 34         if (view.getId() == R.id.insert_btn) {
 35             insertData();
 36         } else if (view.getId() == R.id.delete_btn) {
 37             deleteData();
 38         } else if (view.getId() == R.id.update_btn) {
 39             updateData();
 40         } else if (view.getId() == R.id.query_btn) {
 41             queryData();
 42         }
 43     }
 44
 45     // 表名
 46     // null。数据库如果插入的数据为null,会引起数据库不稳定。为了防止崩溃,需要传入第二个参数要求的对象
 47     // 如果插入的数据不为null,没有必要传入第二个参数避免崩溃,所以为null
 48     // 插入的数据
 49     private void insertData() {
 50         ContentValues values = new ContentValues();
 51         values.put(DBHelper.NAME, "鹿晗");
 52         values.put(DBHelper.AGE, 17);
 53         mDatabase.insert(DBHelper.TABLE_NAME, null, values);
 54         Toast.makeText(this, "插入成功", Toast.LENGTH_SHORT).show();
 55     }
 56
 57     // 表名
 58     // 删除条件
 59     // 满足删除的值
 60     private void deleteData() {
 61         int count = mDatabase.delete(DBHelper.TABLE_NAME, DBHelper.NAME + " = ?", new String[]{"鹿晗"});
 62         Toast.makeText(this, "删除数量:"+count, Toast.LENGTH_SHORT).show();
 63     }
 64
 65     // 表名
 66     // 修改后的数据
 67     // 修改条件
 68     // 满足修改的值
 69     private void updateData() {
 70         ContentValues values = new ContentValues();
 71         values.put(DBHelper.NAME, "小茗同学");
 72         values.put(DBHelper.AGE, 18);
 73         int count = mDatabase
 74                 .update(DBHelper.TABLE_NAME, values, DBHelper.NAME + " = ?", new String[]{"鹿晗"});
 75         Toast.makeText(this, "修改成功:" + count, Toast.LENGTH_SHORT).show();
 76     }
 77
 78     // 表名
 79     // 查询字段
 80     // 查询条件
 81     // 满足查询的值
 82     // 分组
 83     // 分组筛选关键字
 84     // 排序
 85     private void queryData() {
 86         Cursor cursor = mDatabase.query(DBHelper.TABLE_NAME,
 87                 new String[]{DBHelper.NAME, DBHelper.AGE},
 88                 DBHelper.AGE + " > ?",
 89                 new String[]{"16"},
 90                 null,
 91                 null,
 92                 DBHelper.AGE + " desc");// 注意空格!
 93
 94         int nameIndex = cursor.getColumnIndex(DBHelper.NAME);
 95         int ageIndex = cursor.getColumnIndex(DBHelper.AGE);
 96         while (cursor.moveToNext()) {
 97             String name = cursor.getString(nameIndex);
 98             String age = cursor.getString(ageIndex);
 99
100             Log.d("1507", "name: " + name + ", age: " + age);
101         }
102
103     }
104
105 }

创建数据库:

 1 public class DBHelper extends SQLiteOpenHelper {
 2
 3     // 数据库文件名
 4     public static final String DB_NAME = "my_database.db";
 5     // 数据库表名
 6     public static final String TABLE_NAME = "t_person";
 7     // 数据库版本号
 8     public static final int DB_VERSION = 1;
 9
10     public static final String NAME = "name";
11     public static final String AGE = "age";
12
13     public DBHelper(Context context) {
14         super(context, DB_NAME, null, DB_VERSION);
15     }
16
17     // 当数据库文件创建时,执行初始化操作,并且只执行一次
18     @Override
19     public void onCreate(SQLiteDatabase db) {
20         // 建表
21         String sql = "create table " +
22                 TABLE_NAME +
23                 "(_id integer primary key autoincrement, " +
24                 NAME + " varchar, " +
25                 AGE + " varchar"
26                 + ")";
27
28         db.execSQL(sql);
29     }
30
31     // 当数据库版本更新执行该方法
32     @Override
33     public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
34
35     }
36 }
时间: 2024-10-26 07:58:27

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

【Android】Sqlite数据库增删改查

Android系统内置一个Sqlite数据库,如果app需要使用Sqlite数据库数据库存储数据,Android会为此app生成一个.db文件.这个数据库在data/data/<package_name>/databases里面,其中<package_name>为该安卓app的工程包名,这个目录必须root后才能看到.在Windows,单机的应用程序,存储数据,基本放到一个文件里面,正如游戏的存档,基本就是把当前的游戏状态存到一个用户很难找到的文件里面.每次存档读档就是一个从这个存

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

原文:http://www.cnblogs.com/linjiqin/archive/2011/05/26/2059182.html SQLite数据库增删改查操作 一.使用嵌入式关系型SQLite数据库存储数据 在Android平台上,集成了一个嵌入式关系型数据库--SQLite,SQLite3支持NULL.INTEGER.REAL(浮点数字).TEXT(字符串文本)和BLOB(二进制对象)数据类型,虽然它支持的类型只有五种,但实际上sqlite3也接受varchar(n).char(n).d

IOS sqlite数据库增删改查

1.简单介绍 简单封装sqlite数据库操作类 BaseDB 用于完毕对sqlite的增删改查.使用前先导入libsqlite3.0.dylib库 2.BaseDB.h // // BaseDB.h // SqliteDemo // // Created by 赵超 on 14-8-26. // Copyright (c) 2014年 赵超. All rights reserved. // #import <Foundation/Foundation.h> #import "sqli

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

在没有使用SQLite这种轻量级的数据库之前,只使用过Sqlserver2008进行数据的增删改查,公司使用的是大型的ORACLE数据库,还没有真正的会使用它.那时候觉得数据库很庞大,然而遇到SQLite以后,发现有这么个迷你的小数据库,就像女生的包包随身携带的小镜子一样,放在哪里都能使用. 废话少说,SQLite提供了如何连接.关闭等数据库操作,但真正的增.删.改.查等语句同Sqlserver.ORACLE是一样的. 首先,是创建SQLite数据库文件(写了一个方法): Public stat

SQLite数据库增删改查操作

一.使用嵌入式关系型SQLite数据库存储数据 在Android平台上,集成了一个嵌入式关系型数据库--SQLite,SQLite3支持NULL.INTEGER.REAL(浮点数字). TEXT(字符串文本)和BLOB(二进制对象)数据类型,虽然它支持的类型只有五种,但实际上sqlite3也接受varchar(n). char(n).decimal(p,s) 等数据类型,只不过在运算或保存时会转成对应的五种数据类型. SQLite最大的特点是你可以把各种类型的数据保存到任何字段中,而不用关心字段

Android SQLite数据库增删改查操作

一.使用嵌入式关系型SQLite数据库存储数据 在Android平台上,集成了一个嵌入式关系型数据库——SQLite,SQLite3支持NULL.INTEGER.REAL(浮点数字). TEXT(字符串文本)和BLOB(二进制对象)数据类型,虽然它支持的类型只有五种,但实际上sqlite3也接受varchar(n). char(n).decimal(p,s) 等数据类型,只不过在运算或保存时会转成对应的五种数据类型. SQLite最大的特点是你可以把各种类型的数据保存到任何字段中,而不用关心字段

SQLite数据库增删改查

一:SQLite数据库简介: SQLite是一种轻量级的关系型数据库,官网:http://www.sqlite.org/. SQLite数据库文件存在于移动设备的一下目录中:data->data->应用名称->databases .如下图: 二:使用SQLite数据库首相要了解这两个类:SQLiteOpenHelper   SQLiteDatabase. 1:SQLiteOpenHelper 介绍: SQLiteOpenHelper:A helper class to manage da

在Eclipse里面通过Sql语句控制SQLite数据库增删改查

package com.xh.tx.dao; import java.util.ArrayList;import java.util.List; import android.content.Context;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase; import com.xh.tx.bean.Person;import com.xh.tx.utils.MySQLLiteHelper;

ios Sqlite数据库增删改查基本操作

研究了几天的数据库,终于把它给搞出来了.Sqlite是ios上最常用的数据库之一,大家还是有必要了解一下的.这是仿照网上的一个例子做的,有些部分写的不好,我稍作了修改,以讲解为主,主要让大家能够明白如何修改,明白原理,达到举一反三的目的. 先来看看效果图 先来看看数据库方法类,将各个操作都封装在一个类里面,达到代码重用的目的,这是程序员都应该努力去实现的目标,这样在下一次用到同样的方法和类的时候,就可以直接使用封装好的类,可以节约大量的时间. 先来看看.h文件 #import <Foundati

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

研究了几天的数据库,终于把它给搞出来了.Sqlite是ios上最常用的数据库之一,大家还是有必要了解一下的.这是仿照网上的一个例子做的,有些部分写的不好,我稍作了修改,以讲解为主,主要让大家能够明白如何修改,明白原理,达到举一反三的目的. 先来看看效果图 先来看看数据库方法类,将各个操作都封装在一个类里面,达到代码重用的目的,这是程序员都应该努力去实现的目标,这样在下一次用到同样的方法和类的时候,就可以直接使用封装好的类,可以节约大量的时间. 先来看看.h文件 #import <Foundati