Android操作SQLate数据库

1》基本操作(增删改查)

(1)创建数据表新建类MyDatabaseHelper继承SQLiteOpenHelper类,具体代码如下如所示

package com.example.sqlatetest;

import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;import android.widget.Toast;

/** * Created by lenovo on 2019/1/30. */

public class MyDatabaseHelper extends SQLiteOpenHelper {    public static final String CREATE_STUDENT="create table student ("            +"id integer primary key autoincrement,"            +"studentnum integer,"            +"name text)";    private Context context;

public MyDatabaseHelper(Context context, String name, SQLiteDatabase.CursorFactory factory,int version){        super( context,  name, factory, version);        this.context=context;    }

@Override    public void onCreate(SQLiteDatabase sqLiteDatabase) {        sqLiteDatabase.execSQL(CREATE_STUDENT);        Toast.makeText(context,"建表成功",Toast.LENGTH_SHORT).show();    }

@Override    public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {

}}

通过按钮来使用这个类

package com.example.sqlatetest;

import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;

public class MainActivity extends AppCompatActivity {    private MyDatabaseHelper myDatabaseHelper;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        myDatabaseHelper=new MyDatabaseHelper(this,"Student.db",null,1);        Button button=(Button)findViewById(R.id.b1);        button.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View view) {                myDatabaseHelper.getWritableDatabase();            }        });    }}

 

点击按钮后数据库就建立好了,安卓同样给了我们一个查看数据库的工作,首先需要在环境变量中对path变量添加palteform-tool的路径

然后打开cmd,具体操作如下如,.shema可以查看建表语句

(2)添加数据

使用按钮添加数据

button2.setOnClickListener(new View.OnClickListener() {    @Override    public void onClick(View view) {        SQLiteDatabase db=myDatabaseHelper.getWritableDatabase();        ContentValues contentValues=new ContentValues();        contentValues.put("studentnum",20163489);        contentValues.put("name","王*宇");        db.insert("student",null,contentValues);        //清空数据        contentValues.clear();

contentValues.put("studentnum",20163490);        contentValues.put("name","王*思");        db.insert("student",null,contentValues);

}});

数据添加成功后在adb工具中输入select * from 表名;即可查看数据(结尾分号必须加上)

(3)修改数据

public void onClick(View view) {    SQLiteDatabase db=myDatabaseHelper.getWritableDatabase();    ContentValues contentValues=new ContentValues();    contentValues.put("studentnum",20163489);    contentValues.put("name","王宇");    db.update("student",contentValues,"name = ?",new String[]{"王*宇"});

}

(4)删除数据

button4.setOnClickListener(new View.OnClickListener() {    @Override    public void onClick(View view) {        SQLiteDatabase db=myDatabaseHelper.getWritableDatabase();        db.delete("student","studentnum > ?",new String[]{"20163489"});    }});

(5)查询数据

查询数据时会返回一个cursor对象,数据可以逐条从中取出,query函数中最短的一个也要传入七个参数,这七个参数分别是

1,table:指定查询的表

2,columns:指定查询的列名

3,4,selection,selectionArgs:用于分页使用

5,groupby

6,having:对groupby后的数据再一次约束

7,orderby:排序方式

代码实现简单的查询:

button5.setOnClickListener(new View.OnClickListener() {    @Override    public void onClick(View view) {        SQLiteDatabase db=myDatabaseHelper.getWritableDatabase();

Cursor cursor=db.query("student",null,null,null,null,null,null);        if(cursor.moveToFirst()){            do {                int num=cursor.getInt(cursor.getColumnIndex("studentnum"));                String name=cursor.getString(cursor.getColumnIndex("name"));                Log.d(TAG, "学号: "+num);                Log.d(TAG, "姓名: "+name);            }while(cursor.moveToNext());        }        cursor.close();    }});

 

SQLate到此就简单的总结完了,但是如果是使用安卓数据库的话,还是建议使用LitePal数据库,因为LitePal数据库要比SQLite好用的多得多

原文地址:https://www.cnblogs.com/837634902why/p/10336566.html

时间: 2024-10-23 06:55:25

Android操作SQLate数据库的相关文章

android操作sqlite数据库及心得

写这篇文章主要是网上的对sqlite的操作太多且太杂,很多时候都不能很好的运用到自己的项目中,结构不清晰,我自己写了一篇适合刚刚接触的人看的操作方法. 近来用android时要将一些数据保存起来,一开始用的是preferences,后来要保存的东西多了,发现用preferences明显不能满足要求了,而且发现用这个的话代码就变得有点乱了,所以才开始学习使用sqlite数据库,一开始以为不就是个数据库么,和平时的mysql啊或者是sqlserver都一样,都很简单的,但后来真正在用的时候才发现困难

android 操作sqlite数据库

1. package com.exp.contentprividerstest.db; import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper; public class DBUril extends SQLiteOpenHelper { public DBUril(Context context) { 

Android高级-Android操作SQL数据管理,增删改查

已经学了好几天SQL了,昨天刚接触到Android操作SQL数据库,晚上老师留了一个作业,效果图如下 分别是,主界面,和修改,添加,以及删除界面 首先我们先来实现布局 MainActivity.xml 1 <?xml version="1.0" encoding="utf-8"?> 2 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android&quo

Android实现SQLite数据库的增、删、改、查的操作

核心代码DAO类 package com.examp.use_SQLite.dao; import java.util.ArrayList; import java.util.List; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import

无废话Android之android下junit测试框架配置、保存文件到手机内存、android下文件访问的权限、保存文件到SD卡、获取SD卡大小、使用SharedPreferences进行数据存储、使用Pull解析器操作XML文件、android下操作sqlite数据库和事务(2)

1.android下junit测试框架配置 单元测试需要在手机中进行安装测试 (1).在清单文件中manifest节点下配置如下节点 <instrumentation android:name="android.test.InstrumentationTestRunner" android:targetPackage="com.example.demo1" /> 上面targetPackage指定的包要和应用的package相同. (2)在清单文件中ap

android中的数据库操作(转)

android中的数据库操作 android中的应用开发很难避免不去使用数据库,这次就和大家聊聊android中的数据库操作. 一.android内的数据库的基础知识介绍 1.用了什么数据库   android中采用的数据库是SQLite这个轻量级的嵌入式开源数据库,它是用c语言构建的.相关简介可以从链接查看. 2.数据库基本知识观花   对于一些和我一样还没有真正系统学习数据库技术的同学来说,把SQL92标准中的一些基本概念.基本语句快速的了解一下,是很有必要的,这样待会用Android的da

android中的数据库操作【转】

http://blog.csdn.net/nieweilin/article/details/5919013 android中的数据库操作 android中的应用开发很难避免不去使用数据库,这次就和大家聊聊android中的数据库操作. 一.android内的数据库的基础知识介绍 1.用了什么数据库   android中采用的数据库是SQLite这个轻量级的嵌入式开源数据库,它是用c语言构建的.相关简介可以从链接查看. 2.数据库基本知识观花   对于一些和我一样还没有真正系统学习数据库技术的同

Android——使用SQLiteDatabase操作SQLite数据库

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

Android开发之通过Android的API对sqlite数据库的操作以及数据库事务的练习

一.通过Android的API对sqlite数据库的操作 通过已有的ContentValues类,实例一个对象value来调用其中内部的方法来操作sqlite数据库 代码: package com.example.databasedemo; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sql