sqlite是android 轻量级数据库

主要是两个类实现创建数据库和数据的增删改查

这个类是MainActivity 是创建数据库对象,通过这个对象dbHelper调用getWritableDatabase()方法就可以去创建数据库了

接下来就是对数据库的增删改查操作。getWritableDatabase()这个方法很重要 数据库的创建升级增删改查都需要这个方法。ContentValues()这个方法是用来添加数据的。

package com.example.sqlitetest;import com.example.sqlitetest.R;import android.app.Activity;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;public class MainActivity extends Activity {private MyDatabaseHelper dbHelper;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//生成数据库对象dbHelper = new MyDatabaseHelper(this, "BookStore.db", null, 4);Button createDatabase = (Button) findViewById(R.id.create_database);createDatabase.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// 创建数据库,这个方法会调用MyDatabaseHelper中的onCreate()方法和onUpgrade()方法dbHelper.getWritableDatabase();}});//添加数据Button Add_date = (Button) findViewById(R.id.Add_date);Add_date.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {//getWritableDatabase()方法会返回一个SQLiteDatabase对象,这个//对象可以对数据库进行增删改查的操作SQLiteDatabase db = dbHelper.getWritableDatabase();   //通过这个方法添加数据ContentValues values = new ContentValues();//开始组装第一条数据values.put("name", "sunning");values.put("author", "Dan Brown");values.put("pages", "500");values.put("price", "16.6");//插入第一条数据db.insert("Book", null, values);values.clear();//开始组装第二条数据values.put("name", "leoveo");values.put("author", "Frown Brown");values.put("pages", "500");values.put("price", "13.6");//插入第一条数据db.insert("Book", null, values);}});//更新数据Button Update_data = (Button) findViewById(R.id.Update_data);Update_data.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {SQLiteDatabase db = dbHelper.getWritableDatabase(); ContentValues values = new ContentValues();values.put("price", 66.6);db.update("Book", values, "name = ?", new String[]{"sunning"});}});//删除数据Button Delete_data = (Button) findViewById(R.id.Delete_data);Delete_data.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {SQLiteDatabase db = dbHelper.getWritableDatabase(); db.delete("Book", "pages>= ?", new String []{"500"});}});//查询数据Button Query_data = (Button) findViewById(R.id.Query_data);Query_data.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {SQLiteDatabase db = dbHelper.getWritableDatabase();   //查询Book表中所有的数据Cursor cursor = db.query("Book", null, null, null, null, null, null );//cursor.moveToFirst() 表示是否指针移动到第一行的位置if(cursor.moveToFirst()){do{//遍历Cursor对象,取出数据并打印,注意写的时候不要写错字符,要不然报错String name = cursor.getString(cursor.getColumnIndex("name"));String author = cursor.getString(cursor.getColumnIndex("author"));int pages = cursor.getInt(cursor.getColumnIndex("pages"));Double price = cursor.getDouble(cursor.getColumnIndex("price"));Log.d("MainActivity", "name=="+name);Log.d("MainActivity", "author=="+author);Log.d("MainActivity", "pages=="+pages);Log.d("MainActivity", "prices=="+price);}while(cursor.moveToNext());}cursor.close();}});}}

下面这个类给我的感觉像一个工具类。就是继承SQLiteOpenHelper 这个类 ,覆写onCreate()方法和onUpGrade()方法,对表进行创建和升级操作。还有就是创建表的字段语句

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
import android.widget.Toast;public class MyDatabaseHelper extends SQLiteOpenHelper {//创建表  书public static final String CREATE_BOOK = "create table Book ("+"id integer primary key autoincrement,"+"author text,"+"price real,"+"pages integer,"+"name text)";//创建表  书的分类public static final String CREATE_CATEGORY = "create table Category("+"id integer primary key autoincrement,"+"category_name text,"+"categoty_code integer)";private Context mContext;public MyDatabaseHelper(Context context, String name, CursorFactory factory, int version) {super(context, name, factory, version);mContext =  context;}@Overridepublic void onCreate(SQLiteDatabase db) {db.execSQL(CREATE_BOOK);db.execSQL(CREATE_CATEGORY);Toast.makeText(mContext, "Create succeeded", Toast.LENGTH_SHORT).show();}//表的升级 @Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {db.execSQL("drop table if exists Book");db.execSQL("drop table if exists Category");//在升级的方法里面重新创建表onCreate(db);}}
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context="com.example.sqlitetest.MainActivity"android:orientation="vertical"><Buttonandroid:id="@+id/create_database"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="@string/Create_database" /><Buttonandroid:id="@+id/Add_date"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="@string/Add_date" /><Buttonandroid:id="@+id/Update_data"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="@string/Update_data" /><Buttonandroid:id="@+id/Delete_data"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="@string/Delete_data" /><Buttonandroid:id="@+id/Query_data"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="@string/Query_data" /></LinearLayout>

sqlite的增删改查操作相关推荐

  1. 安卓增删改查用sql语句号码_详解Android中一些SQLite的增删改查操作

    在Android开发中经常要涉及到对数据的操作.Android本身提供了四种数据存储方式.包括:SharePreference,SQLite,Content Provider,File. 在Andro ...

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

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

  3. sqlite数据库的基本增删改查操作

    2019独角兽企业重金招聘Python工程师标准>>> 效果图示例 1.在清单里添加相应的权限 <uses-permission android:name="andr ...

  4. IOS sqlite数据库增删改查

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

  5. Python面向对象编程案例:封装数据库增删改查操作

    问题描述:编写一个类,封装对SQLite数据库的增删改查操作,使得数据库操作更加友好,类的使用者不需要了解SQL语句的语法规则,只需要了解类的接口即可. 思考下面的问题,尝试着写一写,然后到达文末查看 ...

  6. Android Studio SQLite 数据库 增删改查 简单

    源码 效果展示     所有操作都在这个界面完成,操作完直接显示 设计     一个class用来创建数据库,建表,一个activity用来执行增删改查操作 代码 DatebaseHlper impo ...

  7. python+sqlite3-数据库增删改查操作

    python+sqlite3-数据库增删改查操作 目录 python+sqlite3-数据库增删改查操作 01.sqlite数据库 02.下载数据库可视化工具 03.创建数据库 04.python连接 ...

  8. python增删改查的框架_简单的Django框架增删改查操作

    Django之orm对MysqL数据库的增删改查操作简介: 利用Django中orm来查找数据库中的数据,对数据库进行增.删.改.查: 增:新增数据 # 操作数据库user表新增记录 # 方式1: u ...

  9. python操作mysql的增删改查_详解使用pymysql在python中对mysql的增删改查操作(综合)...

    这一次将使用pymysql来进行一次对MySQL的增删改查的全部操作,相当于对前五次的总结: 先查阅数据库: 现在编写源码进行增删改查操作,源码为: #!/usr/bin/python #coding ...

最新文章

  1. 2021年大数据常用语言Scala(十七):基础语法学习 Set
  2. SpringBoot - 优雅的实现【参数校验】高级进阶
  3. 5、删除存储过程(DROP PROCEDURE)
  4. 【HDU - 2809】 God of War(状压dp)
  5. HashMap30连问,彻底搞懂HashMap
  6. Angular2学习笔记——在子组件中拿到路由参数
  7. 关于进程资源限制的getrlimit和setrlimit函数(epoll、服务器经常用)
  8. Gerchberg–Saxton算法
  9. linux子系统gdp调试,Linux GDB调试 详述
  10. c语言回调函数构架程序,C语言回调函数熟练---使用方法(构建程序框架方便好用)...
  11. 实践教程 | Pytorch 模型的保存与迁移
  12. 机器学习小字典(一)——SVM
  13. 亲密关系沟通-【主动性】觉察自我的力量
  14. 设计模式之单实例模式(Singleton)
  15. Atitit hibernste5 注解方式开发总结 目录 1. 映入hb5的jar 建立项目 1 1.1. 建表tab1 ,这里使用了sqlite数据库 1 1.2. 建立映射实体类tab1
  16. 正态分布、t分布、卡方分布、F分布的关系与差异
  17. vnc远程控制软件下载,有哪些实用的vnc远程控制软件下载
  18. stm32 c语言运行速度,stm32F7,cache,tcm及运行速度问题
  19. AI实现的两种方案,暴力推演与因果率
  20. 在Windows10上编译SWASH模型

热门文章

  1. ShadeGraph教程之节点详解3:Input Nodes
  2. 项目管理工具project软件学习(六) - 设置里程碑、任务备注
  3. (六)将样式转换模型从TensorFlow转换为TensorFlow Lite
  4. Visual Studio 2019 v16.8 Preview 2 发布
  5. 模板设计模式_C常用设计模式——模板方法模式
  6. maven+mvc设计模式
  7. 关于axios拿取后端hashMap存的值
  8. 怎么看台式计算机是几位的,怎么看电脑是32位还是64位?一目了然
  9. jq监听input type=file发生改变,即选择文件,并获取文件名称
  10. 沈阳大学生招聘2020计算机,2020沈阳市高校毕业生基层公共岗位服务计划人员招录600人...