Sqlite   发布时间:2022-05-22  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了sqlite大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
1.sqliteOpenHelper

  sqliteOpenHelper是一个抽象类,来管理数据库的创建和版本的管理。要使用它必须实现它的nCreate(sqliteDatabasE),onUpgrade(sqliteDatabase,int,int)方法

  onCreate:当数据库第一次被建立的时候被执行,例如创建表,初始化数据等。

  onUpgrade:当数据库需要被更新的时候执行,例如删除久表,创建新表

package xqh.utils;

import androID.content.Context;
import androID.database.sqlite.sqliteDatabase;
import androID.database.sqlite.sqliteOpenHelper;
import androID.database.sqlite.sqliteDatabase.cursorFactory;

public class DBHelper extends sqliteOpenHelper {

    //数据库版本
    private static final int version = 1;
    //新建一个表
    String sql = "create table if not exists Testusers"+
    "(ID int priMary key,name varchar,sex varchar)";
    
    public DBHelper(Context context,String name,cursorFactory factory,int version) {
        super(context,name,factory,version);
    }

    public DBHelper(Context context,int version){
        this(context,null,version);
    }
    
    public DBHelper(Context context,String Name){
        this(context,version);
    }
    
    @OverrIDe
    public voID onCreate(sqliteDatabase db) {
        db.execsql(sql);
    }

    @OverrIDe
    public voID onUpgrade(sqliteDatabase db,int oldVersion,int newVersion) {
        
    }
    
}


3.sqlite的使用

  AndroID提供了一个名为sqliteDatabase的类,它封装了一些操作数据库的API。使用它能实现基本的CRUD操作,通过getWritableDatabase()和getReadableDatabase()可以获取数据库实例

package xqh.sqlite;

import xqh.utils.DBHelper;
import androID.app.Activity;
import androID.database.sqlException;
import androID.database.sqlite.sqliteDatabase;
import androID.os.bundle;
import androID.Widget.button;
import androID.util.Log;
import androID.vIEw.VIEw;
import androID.vIEw.VIEw.onClickListener;;

public class Testsqlite extends Activity {

    button textBtn = null;
    button btncreatedb = null;
    button btnCreateTb = null;
    button btnInsert = null;
    button btnupdate = null;
    button btndelete = null;
    DBHelper dbHelper = null;
    sqliteDatabase db = null;
    
    @OverrIDe
    protected voID onCreate(Bundle savedInstanceStatE) {
        // Todo auto-generated method stub
        super.onCreate(savedInstanceStatE);
        setContentVIEw(R.layout.sqlitetest);
        
        OpenDb();
        
        textBtn = (button)findVIEwByID(R.ID.btnheader);
        textBtn.setFocusable(true);
        
//        btncreatedb = (button)findVIEwByID(R.ID.btncreatedb);
//        btncreatedb.setonClickListener(createdbListener);
//        
//        btnCreateTb = (button)findVIEwByID(R.ID.btnCreateTb);
//        btnCreateTb.setonClickListener(createTbListener);
        
        btnInsert = (button)findVIEwByID(R.ID.btnInsert);
        btnInsert.setonClickListener(insertTbListener);
        
        btnupdate = (button)findVIEwByID(R.ID.btnupdatE);
        btnupdate.setonClickListener(updateTbListener);
        
        btndelete = (button)findVIEwByID(R.ID.btnDelete);
        btndelete.setonClickListener(deleteTbListener);

    }
    
    public OnClickListener deleteTbListener = new OnClickListener() {
        public voID onClick(VIEw v) {
            deleteTb();
        }
    };
    
    public OnClickListener updateTbListener = new OnClickListener() {
        public voID onClick(VIEw v) {
            updateTb();
        }
    };
    
    public OnClickListener insertTbListener = new OnClickListener() {
        public voID onClick(VIEw v) {
            InsertTb();
        }
    };
    
//    public OnClickListener createdbListener = new OnClickListener() {
//        public voID onClick(VIEw v) {
//            CreateDatabase("TestDb01");
//        }
//    };

//    public OnClickListener createTbListener = new OnClickListener() {
//        public voID onClick(VIEw v) {
//            Createtable();
//        }
//    };
    
//    /**
//     * 新建一个数据库
//     * @param dbname
//     * @return
//     */
//    public sqliteDatabase CreateDatabase(String dbName){
//        dbHelper = new DBHelper(this,dbName);
//        return dbHelper.getWritableDatabase();
//    }
    
    /**
     * 新建一个表
     * @param db
     */
    public voID Createtable(){
        db = dbHelper.getWritableDatabase();
        String sql = "create table if not exists Testusers"+
                        "(ID int priMary key,sex varchar)";
        try {
            db.execsql(sql);
        } catch (sqlException E) {
            Log.i("err","create table Failed");
        }
    }
    
    /**
     * 插入数据
     */
    public voID InsertTb(){
        db = dbHelper.getWritableDatabase();
        String sql = "insert into Testusers (ID,seX) values (2,'hongguang','men')";
        try {
            db.execsql(sql);
        } catch (sqlException E) {
            Log.i("err","insert Failed");
        }
    }
    
    /**
     * 更新数据
     */
    public voID updateTb() {
        db = dbHelper.getWritableDatabase();
        String sql = "update Testusers set name = 'anhong',sex = 'men' where ID = 2";
        try {
            db.execsql(sql);
        } catch (sqlException E) {
            Log.i("err","update Failed");
        }
    }
    
    /**
     * 删除数据
     */
    public voID deleteTb(){
        db = dbHelper.getWritableDatabase();
        String sql = "delete from Testusers where ID = 2";
        try {
            db.execsql(sql);
        } catch (sqlException E) {
            Log.i("err","delete Failed");
        }
    }
    
    /**
     * 打开数据库
     */
    public voID OpenDb(){
        dbHelper = new DBHelper(this,"TestDb01");
        db = dbHelper.getWritableDatabase();
    }
    
    /**
     * 关闭数据库
     */
    public voID CloseDb(){
        dbHelper.close();
    }
    
    @OverrIDe
    protected voID onDestroy() {
        super.onDestroy();
        if(db!=null){
            db.close();
        }
        if(dbHelper!=null){
            dbHelper.close();
        }
    }
    
}

常用命令常用命令常用命令::::

1)创建数据库文件:>sqlite3d:\test.db回车就生成了一个test.db在d盘。这样同时也sqlite3挂上了这个test.db

2)用.Help可以看看有什么命令>.Help回车即可

3)可以在这里直接输入sql语句创建表用;结束,然后回车就可以看到了

4)看看有创建了多少表>.tables

5)看表结构>.scheR_558_11845@a表名

6)看看目前挂的数据库>.database

7)如果要把查询输出到文件>.output文件名>查询语句;查询结果就输出到了文件c:\query.txt把查询结果用屏幕输出>.outputstdout

8)把表结构输出,同时索引也会输出.dump表名

9)退出>.exit或者.quit普通sql操作,通用标准sql语句。

大佬总结

以上是大佬教程为你收集整理的sqlite全部内容,希望文章能够帮你解决sqlite所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。