SQLite数据库的创建与使用

(1)首先创建一个类继承SQLiteOpenHelper,重写父类中super(),onCreate(),onUpgrade()方法,

在super()方法中声明数据库的content(上下文),databaseName(数据的名称),factory(游标工厂),version(版本);

在onCreate()方法中可以创建一张表;

在onUpgrade()方法中可以更新数据库的版本。

public class PersonDB extends SQLiteOpenHelper {
    public PersonDB(Context context){
        super(context,"person.db",null,5);
    }

    @Override
    public void onCreate(SQLiteDatabase sqLiteDatabase) {
        sqLiteDatabase.execSQL("create table person (id integer primary key autoincrement,name varchar(20),number varchar(20))");
        System.out.print("数据库创建成功");
    }

    @Override
    public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
        System.out.println("数据库升级成功");
    }
}

(2)创建javaBean用于存储数据

作用:用于保存数据库中的值。(注意:该类中的变量应该和数据库中的字段相同)

在该类中通过变量设置setXXX()和getXXX()方法(根据需求也可增加需要的方法);

public class Person {
    private  int id;
    private  String name;
    private String number;
    public Person(){}

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getNumber() {
        return number;
    }

    public void setNumber(String number) {
        this.number = number;
    }

    @Override
    public String toString() {
        return "Person{" +
                "id=" + id +
                ", name=‘" + name + ‘\‘‘ +
                ", number=‘" + number + ‘\‘‘ +
                ‘}‘;
    }
}

(3)在MainActivity中可以通过BUTTON增加监听对数据库进行操作 增,删,改,查(可以将查询的结果通过ListView吧数据显示到手机界面上)。

<1>在xml文件增加需要的控件,在MainActivity中通过findViewById()的方法找到xml中的控件

b1=(Button)findViewById(R.id.b1);

b2=(Button)findViewById(R.id.sele);

<2>在MainActivity中声明数据库(this指的是上下文环境)

helper=new PersonDB(this);

<3>操作数据库(注意:每次操作完数据库后应将数据库关闭通过close()方法)

增:给button设置监听事件

通过SQLiteDataBase得到一个可读写的数据库

SQLiteDatabase db=helper.getWritableDatabase();

编写SQL语句

Long i=  db.insert(String table,String nullColumnHack,ContentValues values);

通过SQL语句的返回值判断操作是否成功

 if(i==-1){
                    Toast.makeText(MainActivity.this, "插入失败", Toast.LENGTH_SHORT).show();
                }
                else{
                    Toast.makeText(MainActivity.this, "插入成功", Toast.LENGTH_SHORT).show();
                }}

最后关闭数据库

db.close();

删,改 步骤:同上

查:给button设置监听事件

通过SQLiteDataBase得到一个可读或者可读写的数据库

SQLiteDatabase db=helper.getReadableDatabase();
SQLiteDatabase db=helper.getWritableDatabase();

编写SQL语句,将查询到的将数据存进javaBean中,定义一个内部类继承BaseAdapter适配器,最终通过ListView将结果显示到控制台

        b2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                SQLiteDatabase db=helper.getWritableDatabase();
                Cursor cursor= db.query("Person", null, null, null, null, null, null);
                list_infor=new ArrayList<Person>();
                while(cursor.moveToNext()){
                    Person infor=new Person();
                    int id=cursor.getInt(cursor.getColumnIndex("id"));
                    String name=cursor.getString(cursor.getColumnIndex("name"));
                    String number=cursor.getString(cursor.getColumnIndex("number"));
                    infor.setId(id);
                    infor.setName(name);
                    infor.setNumber(number);
                    list_infor.add(infor);
                }
                cursor.close();
                db.close();

                lv.setAdapter(new MyAdapter());
            }
        });
    }
    private class MyAdapter extends BaseAdapter {

        @Override
        public int getCount() {
            return list_infor.size();
        }

        @Override
        public Object getItem(int i) {
            return null;
        }

        @Override
        public long getItemId(int i) {
            return 0;
        }

        @Override
        public View getView(int i, View view, ViewGroup viewGroup) {
            TextView tv=new TextView(MainActivity.this);
            tv.setText(list_infor.get(i).toString());
            return tv;
        }
    }
时间: 2024-07-30 19:15:58

SQLite数据库的创建与使用的相关文章

Adobe AIR中使用Flex连接Sqlite数据库(1)(创建数据库和表,以及同步和异步执行模式)

系列文章导航 Adobe AIR中使用Flex连接Sqlite数据库(1)(创建数据库和表) Adobe AIR中使用Flex连接Sqlite数据库(2)(添加,删除,修改以及语句参数) Adobe AIR中使用Flex连接Sqlite数据库(3)(查询) Adobe AIR中使用Flex连接Sqlite数据库(4)(事务) Flex,Fms3相关文章索引 Fms3和Flex打造在线多人视频会议和视频聊天(附原代码) 免费美女视频聊天,多人视频会议功能加强版本(Fms3和Flex开发(附源码))

Android开发SQLite数据库的创建

package com.example.db; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDatabase.CursorFactory; import android.database.sqlite.SQLiteOpenHelper; public class PersonSQLiteOpenHelper e

【Anroid进阶】SQLite数据库使用完全详解

在Android开发中,我们一般可以使用文件.sharedpreferences.以及数据库来保存我们程序运行中产生的数据,本篇主要讲解如何使用SQLite数据库,完成数据的增删改查的一般操作 SQLite介绍 SQLite 一个非常流行的嵌入式数据库,它支持 SQL 语言,并且只利用很少的内存就有很好的性能.此外它还是开源的,任何人都可以使用它. SQLite 和其他的主要 SQL 数据库没什么区别.它的优点就是高效,Android 运行时环境包含了完整的 SQLite. SQLite 和其他

Android开发之sqlite数据库的练习

一.目标 通过employee员工类来做例子练习sqlite数据库的创建更新以及增删改查,并使用sqlite expert可视化软件来检查数据库的操作. 二.具体步骤 (1)创建sqlite数据库 第一步:建立一个Help类继承sqliteOpenHelper类来创建数据库,实现SQLiteOpenHelper的接口,并添加一个构造方法.父类构造方法需要有4个参数,数据库的名字和数据库的等级另外创建一个常量类类保存,并且这种的名字一般都全部大写,Ctrl+Shift+U可以快捷全部换成大写 /*

Sqlite数据库创建、删除、降级笔记

(1).在创建sqlite数据库时需要注意oncreate()方法只有在第一次创建数据库时候运行.当数据库删除后也会执行,sqlite不支持数据库删除,但可以删除相应的文件,即删了数据库.当我们再次配置文件时候就会执行oncreate()了. (2).onUpgrade()只有在版本号发生改变(增加)时候才会执行,很多时候我们直接在onUpgrade()里添加我们想插入的表或者列,但会报错,那是因为你之前版本onUpgrade里的语句会再次执行,若之前插入了表.或者行,此时会再执行一次,因此每次

windows 下创建 sqlite 数据库

说明:windows 下执行创建 sqlite 数据库命令后数据库文件不会马上生成,需要创建表以后才会生成. 1.将 sqlite3.exe 文件放在任何位置(如放在 d:\tools )2.在 CMD 下进入到 d:\tools 下3.在 CMD 命令提示符下输入 sqlite3 test.db ( test.db 是数据库名)回车注意:这时 test.db 数据库确实已经创建好了但是还是个临时文件,所以现在需要要输入SQL命令创建表4.create table test(name text)

以编程的方式使用SQLite数据库 执行CRUD(创建 读取 更新 删除)操作

DBAdapter数据库辅助类 package com.databses; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.SQLException; import android.database.sqlite.SQLiteDatabase; import android.database.s

使用Entity Framework Core Code First创建SQLite数据库

Entity Framework Core(以下简称"EF Core")支持多种数据库.在这篇文章中,我们看看如何使用EF Core的Code First方式创建SQLite数据库 下载SQLite,解压后会得到三个文件,放到c:\sqlite目录下 我们先创建一个.NET Core控制台程序 添加EF Core for SQLite组件库 "dependencies": { "Microsoft.EntityFrameworkCore.Sqlite&qu

【Android】13.0 第13章 创建和访问SQLite数据库&mdash;本章示例主界面

分类:C#.Android.VS2015: 创建日期:2016-02-26 一.简介 Android 内置了三种数据存取方式:SQLite数据库.文件.SharedPreferences. 这一章我们主要学习如何使用SQLite数据库存取数据. 1.SQLite是个什么档次的数据库 SQLite是一种免费的.开源的数据库,由于它独特的设计(把各种数据类型都转换为它自己内部处理的5种类型)导致其占用内存极少,因此很多项目都喜欢使用它. Android集成了SQLite并内置了专门对SQLite操作